【问题标题】:pandas dataframe values with numpy array带有numpy数组的熊猫数据框值
【发布时间】:2017-05-26 09:26:38
【问题描述】:
例如,我有一个这样的数据框:
import pandas as pd
df = pd.DataFrame([[1, 2.], [3, 4.]], columns=['a', 'b'])
print df
a b
0 1 2.0
1 3 4.0
我想得到一个如下的数据框:
a b
0 [1,3] [2,4]
【问题讨论】:
标签:
arrays
pandas
numpy
dataframe
【解决方案1】:
一种方法 -
df_out = pd.DataFrame([df.values.T.astype(int).tolist()], columns=df.columns)
取回 -
N = len(df_out.columns)
arr_back = np.concatenate(np.concatenate(df_out.values)).reshape(N,-1).T
df_back = pd.DataFrame(arr_back, columns=df_out.columns)
示例运行 -
In [164]: df
Out[164]:
a b
0 1 2.0
1 3 4.0
2 5 6.0
In [165]: df_out
Out[165]:
a b
0 [1, 3, 5] [2, 4, 6]
In [166]: df_back
Out[166]:
a b
0 1 2
1 3 4
2 5 6