如何将数据框中的成对元组列表转换为列

时间:2018-10-26 06:38:06

标签: python pandas dataframe

我有一个dataframe列,其中每个单元格数据如下:

[('a', '2000'),('b', '4000'),('d', '5000')]

有些人与c有4对。如何将它们全部转换为新的列填充 df['a'] , df['b'] , df['c'] , df['d']吗?

3 个答案:

答案 0 :(得分:0)

import pandas as pd 
d=[('a', '2000'),('b', '4000'),('d', '5000')]  
df = pd.DataFrame(data=d).T   
df.columns = df.iloc[0]    
df = df.iloc[1:]    

enter image description here

答案 1 :(得分:0)

另一种方法:

l = [('a', '2000'),('b', '4000'),('d', '5000')]
df = pd.DataFrame([dict(l)])

如果您的数据就像元组的嵌套列表一样,请尝试如下操作:

df = pd.DataFrame(list(map(dict, l)))

输出将类似于:

      a     b     d
0  2000  4000  5000

答案 2 :(得分:0)

这不是矢量化的。一种有效的解决方案是通过$sql = "INSERT INTO $user ( name, email, password )VALUES( '$username', '$email', '$password' )"; + pd.DataFramelistmap构造函数提供字典列表:

dict