numpy重新学习系列(3)---如何创建一个array-四种从其他形式转化成array的方法

简介: numpy重新学习系列(3)---如何创建一个array-四种从其他形式转化成array的方法

numpy有几种方法可以创建array数据结构。

 

第一种是转换,把python的list,tuple,或者pandas的series或者dataframe转化为array.

# 转换成array的几种方法
import numpy as np
import pandas as pd
array_from_list=np.array([1,2,3,4,5,6])
print("array_from_list",array_from_list)
array_from_tuple=np.array((1,2,3,4,5,6))
print("array_from_tuple",array_from_tuple)
s=pd.Series([1,2,3,4,5,6])
array_from_series=np.array(s)
print("array_from_series",array_from_series)
'''
array_from_list [1 2 3 4 5 6]
array_from_tuple [1 2 3 4 5 6]
array_from_series [1 2 3 4 5 6]
'''
# 关键是,同样的创建的这几个数字,他们并不相等
# 首先,用is判断
print('array_from_list is array_from_tuple',array_from_list is array_from_tuple)
# 可以看出,两者并不相等,用id分别判断他们的地址
print("id(array_from_list)",id(array_from_list))
print("id(array_from_tuple)",id(array_from_tuple))
# 可以比较明显看出来,他们两个的储存地址是不一致的
print("id(1)",id(1))
print("id(1)",id(1))
a=None
b=None
print("id(a)",id(a))
print("id(b)",id(b))
print("id(None)",id(None))
print("a is b",a is b)
# 从这几个关系判断中,可以看出,只有内存地址是一样的变量,用is判断,两者相等才会相等.所以,尽管三个array的内容一样,但是他们并不相等
'''
array_from_list is array_from_tuple False
id(array_from_list) 2089190283584
id(array_from_tuple) 2089190284544
id(1) 140734861668096
id(1) 140734861668096
id(a) 140734861199376
id(b) 140734861199376
id(None) 140734861199376
a is b True
'''
# 从dataframe转化成numpy
df=pd.DataFrame()
df['a']=[1,2,3]
df['b']=[4,5,6]
print()
print(df)
print()
array_from_df=np.array(df,order='F')
print()
print(array_from_df)
print()
array_from_two_list=np.array([[1,2,3],[4,5,6]])
print()
print(array_from_two_list)
print()
'''
  a  b
0  1  4
1  2  5
2  3  6
[[1 4]
 [2 5]
 [3 6]]
[[1 2 3]
 [4 5 6]]
'''
目录
相关文章
|
数据采集 机器学习/深度学习 存储
【机器学习】数据清洗——基于Numpy库的方法删除重复点
【机器学习】数据清洗——基于Numpy库的方法删除重复点
770 1
|
数据采集 机器学习/深度学习 数据可视化
深入学习NumPy库在数据分析中的应用场景
深入学习NumPy库在数据分析中的应用场景
|
8月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
651 1
|
JavaScript 前端开发 Java
深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
Array.find() 是 JavaScript 数组方法中一个非常实用和强大的工具。它不仅提供了简洁的查找操作,还具有性能上的独特优势:返回的引用能够直接影响原数组的数据内容,使得数据更新更加高效。通过各种场景的展示,我们可以看到 Array.find() 在更新、条件查找和嵌套结构查找等场景中的广泛应用。 在实际开发中,掌握 Array.find() 的特性和使用技巧,可以让代码更加简洁高效,特别是在需要直接修改原数据内容的情形。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一
|
JavaScript 前端开发
JavaScript Array map() 方法
JavaScript Array map() 方法
|
移动开发 运维 供应链
通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
array.some()可以用来权限检查、表单验证、库存管理、内容审查和数据处理等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
供应链 JavaScript 前端开发
通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
array.every()可以用来数据验证、权限检查、一致性检查等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
Python
Numpy学习笔记(一):array()、range()、arange()用法
这篇文章是关于NumPy库中array()、range()和arange()函数的用法和区别的介绍。
1211 6
Numpy学习笔记(一):array()、range()、arange()用法
|
JavaScript 算法 前端开发
JS算法必备之Array常用操作方法
这篇文章详细介绍了JavaScript中数组的创建、检测、转换、排序、操作方法以及迭代方法等,提供了数组操作的全面指南。
565 2
JS算法必备之Array常用操作方法
|
JavaScript 前端开发 开发者

热门文章

最新文章

  • 1
    PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
    291
  • 2
    Java 中数组Array和列表List的转换
    1027
  • 3
    JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
    738
  • 4
    通过array.reduce()实现数据汇总、条件筛选和映射、对象属性的扁平化、转换数据格式、聚合统计、处理树结构数据和性能优化,reduce()的使用详解(附实际应用代码)
    1575
  • 5
    通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
    688
  • 6
    通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
    482
  • 7
    多维数组操作,不要再用遍历循环foreach了!来试试数组展平的小妙招!array.flat()用法与array.flatMap() 用法及二者差异详解
    324
  • 8
    别再用双层遍历循环来做新旧数组对比,寻找新增元素了!使用array.includes和Set来提升代码可读性
    323
  • 9
    Array.forEach实战详解:简化循环与增强代码可读性;Array.forEach怎么用;面对大量数据时怎么提高Array.forEach的性能
    211
  • 10
    深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
    783