为了账号安全,请及时绑定邮箱和手机立即绑定

将 numpy 向量转换为列、pandas

将 numpy 向量转换为列、pandas

慕工程0101907 2021-11-02 16:55:15
我有一个形状为 (14,50176) 的 numpay 数组,看起来像这样。[[219 220 221 ...  32  33  34] [154 152 149 ...  15  15  15] [205 202 192 ... 183 183 179] ... [  6   7   7 ...  24  24  25] [239 245 246 ... 101 117 128] [ 21  44  89 ... 120 120 121]]现在我想将这 14 个向量转换为 Pandas 中的列。它看起来像这样 vectors0 [219 220 221 ...  32  33  34]1 [154 152 149 ...  15  15  15]2 [205 202 192 ... 183 183 179].    ...3 [  6   7   7 ...  24  24  25]4 [239 245 246 ... 101 117 128]5 [ 21  44  89 ... 120 120 121]
查看完整描述

2 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

你可能想要这个,假设你的意思是 14 行和 1 列:

pd.DataFrame(array).apply(list, axis=1)

如果您的意思是 50176 行和 1 列,则将其更改为:

pd.DataFrame(array).T.apply(list, axis=1)


查看完整回答
反对 回复 2021-11-02
?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

您可以将值转换为lists,但随后在 Pandas 中丢失了矢量化函数:


a = np.array(

[[219,220,221,32,  33,  34],

 [154,152,149, 15, 15 ,15],

 [205,202,192, 183, 183, 179],

 [ 6, 7, 7, 24, 24, 25],

 [239, 245,246, 101, 117,128],

 [21, 44, 89, 120, 120,121]])



df = pd.DataFrame({'vectors':a.tolist()})

print (df)

                          vectors

0     [219, 220, 221, 32, 33, 34]

1     [154, 152, 149, 15, 15, 15]

2  [205, 202, 192, 183, 183, 179]

3           [6, 7, 7, 24, 24, 25]

4  [239, 245, 246, 101, 117, 128]

5     [21, 44, 89, 120, 120, 121]

所以更好的是将其转换为DataFrame:


df = pd.DataFrame(a)

print (df)

     0    1    2    3    4    5

0  219  220  221   32   33   34

1  154  152  149   15   15   15

2  205  202  192  183  183  179

3    6    7    7   24   24   25

4  239  245  246  101  117  128

5   21   44   89  120  120  121


查看完整回答
反对 回复 2021-11-02
  • 2 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号