有一个多维数组,我想把它作为一个列引入到df中。
import pandas as pd
import numpy as np
x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
df = pd.DataFrame(['A', 'B'], columns=['First'])初始df:
  First 
0     A 
1     B 最终输出应为:
  First  Second  
0     A   [1,2,3]
1     B   [4,5,6]最后的obj是将表上载到数据库中,我知道这不是保存记录的最好方法。如果你有任何建议,我们非常欢迎。
谢谢。
发布于 2019-11-28 01:02:13
您可以通过将数组x的行解压缩到一个列表中来直接对其进行assign:
df.assign(second=[*x])
   First  second
0     A  [1, 2, 3]
1     B  [4, 5, 6]请注意,如注释中所述,这与以下内容相同:
df.assign(second=list(x))发布于 2019-11-28 01:01:29
使用:
df['Second']=x.tolist()
print(df)
  First     Second
0     A  [1, 2, 3]
1     B  [4, 5, 6]发布于 2019-11-28 01:02:11
 import pandas as pd
 import numpy as np
 x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
 df = pd.DataFrame(['A', 'B'], columns=['First'])
 df['second'] = [i for i in x] or df['second'] = list(x)
 print(df)https://stackoverflow.com/questions/59075066
复制相似问题