我有一个这样的数据框:
但我希望每行中的每个像素都有单独的列。所以它会是这样的
0 129 179 242 128 178 241
1 104 93 75 101 90 72
2 172 159 176 171 158 175
我该怎么做?
最佳答案
这可能效率不高,但您可以将这些元组转换为列表,扩展它们,然后应用系列,即
df = pd.DataFrame({'one':[[(1,2,3,),(4,5,6)],[(4,5,6),(7,8,9)]],'two':['a','b']})
one two
0 [(1, 2, 3), (4, 5, 6)] a
1 [(4, 5, 6), (7, 8, 9)] b
df['one'] = df['one'].apply(lambda x : sum([list(i) for i in x],[]))
new_df = df['one'].apply(pd.Series).assign(two=df['two'])
new_df
two 0 1 2 3 4 5
0 a 1 2 3 4 5 6
1 b 4 5 6 7 8 9
关于python - 如何在 Pandas 数据框中创建多列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49830808/