我有一个带有浮动类型的DataFrame
Number
2
3.1
4.3我想把它变成一个清单:
Number
[2]
[3.1]
[4.3]它可以很容易地完成像list(str(x))一样。但是,由于我的特殊用途,当我为每一行(如type(df.Number[0][0]) )选择列表的元素时,它应该是浮点数而不是字符串(不需要使用代码将其转换回浮点数类型)
发布于 2018-10-23 11:15:15
您可以使用list comprehension
df['a'] = [[x] for x in df['a']]
print (df)
a
0 [-1.0]
1 [0.5]
2 [5.0]发布于 2018-10-23 11:06:37
我不知道你为什么要这样做,但这就是你如何得到你想要的:
import numpy as np
import pandas as pd
data = [2,3.1,4.3]
df = pd.DataFrame(data, columns=['number'])
df['number'] = df['number'].apply(lambda x:np.array([x,]).tolist())
print(df['number'])发布于 2018-10-23 22:29:19
如果您确实需要这样做,可以直接通过NumPy通过np.ndarray.tolist提取一个列表。
df['Number'] = df['Number'].values[:, None].tolist()
print(df)
Number
0 [2.0]
1 [3.1]
2 [4.3]https://stackoverflow.com/questions/52946968
复制相似问题