|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
有3个问题,请教有经验的鱼油:
array1 = np.array(([5,7,3]))
array2 = np.array(([3,1,5,6])) 与 array2 = np.array([[3],[1],[5],[6]]),这两个array2数组不一样吗?具体是啥区别啊?
而且,array1 + array2, 与前一个arry2不能相加,后一个array2就可以。为什么?
广播机制满足条件:1. 数组的某一维度等长;2. 其中一个数组的某一维度为1
它们能相加,是满足了哪一个条件?
本帖最后由 阿奇_o 于 2021-8-31 18:54 编辑
你分清楚它到底是多少行多少列,就行了——80%的情况 二维的DataFrame或一维的Series
所谓的"广播机制",就是它能否遍历(横向或纵向),不用纠结为什么不能或能,先熟悉基本的用法,就行了。
- >>> import numpy as np
- >>> arr1 = np.array(([5,7,3]))
- >>> arr2 = np.array([[5,7,3]])
- >>> arr1 # 得到是一维的数组
- array([5, 7, 3])
- >>> arr2 # 得到的是二维的数组
- array([[5, 7, 3]])
- >>> import pandas as pd
- >>> pd.DataFrame(data=arr2) # 二维数组的数据可以作为DataFrame的数据,生成DF对象(可直观地看到它有多少"行"、多少"列")
- 0 1 2
- 0 5 7 3
- # 特殊在于 只有 "一行"
- >>> arr3 = np.array([ [5],[7],[3] ])
- >>> arr3 # 同样得到的是 二维数组(嵌套一层,即二维;特殊在于只有"一列")
- array([[5],
- [7],
- [3]])
- >>> pd.DataFrame(data=arr3) #
- 0
- 0 5
- 1 7
- 2 3
- >>>
复制代码
|
|