我有一个带有整数值列的pandas数据框,但我似乎无法弄清楚如何将这些值放入列中。
例如,
use_template
谢谢。
答案 0 :(得分:4)
numpy
解决方案
df['Num']=df.NUMBERS.values[:,None].tolist()
df
Out[322]:
NUMBERS Num
0 1 [1]
1 2 [2]
2 3 [3]
3 4 [4]
4 5 [5]
答案 1 :(得分:3)
这是一种方式。
extract (year, current_date).
但是,除非你有一个非常具体的理由,否则不鼓励这样做,因为你失去了df['NUMBERS'] = df['NUMBERS'].apply(lambda x: [x])
的矢量化优势。
当您的值为pandas
时控制行为:
np.nan
答案 2 :(得分:1)
你也可以这样做:
df["NUMBERS"].values.reshape(5,1)
,会给你
array([[1],
[2],
[3],
[4],
[5]])
这将是一个数组,它将保持pandas
的矢量化效益。
或者要获取列表列表,您可以这样做:
[[x] for x in df["NUMBERS"]]
会给:
[[1], [2], [3], [4], [5]]
正如@piRSquared建议的那样,你可以这样做:
df.assign(Numbers=df.Numbers.values.reshape(-1, 1).tolist())
哪个会返回另一个DF,每个值都作为列表:
Numbers
0 [1]
1 [2]
2 [3]
3 [4]
4 [5]