gpt4 book ai didi

python - 如何将一个数据框转换为另一个数据框

转载 作者:太空宇宙 更新时间:2023-11-03 16:57:03 25 4
gpt4 key购买 nike

希望这个问题有意义。我在网上找不到类似的东西。

我有一堆以下格式的数据:

Name  Field  Value
A Field1 Value1
A Field2 Value2
A Field3 Value3
B Field1 Value1
B Field2 Value2
...

我想将其转换为 DataFrame,例如:

Name  Field1  Field2  Field3
A Value1 Value2 Value3
B Value1 Value2 Value3

如果我这样做: df.pivot('Name', 'Field') 我会得到一个数据透视表,其中的数据呈我想要的“形状”,但作为数据透视对象,我只需更喜欢有一个数据框。在我看来,枢轴是用来处理数字的,我所做的只是将列转换为变量,我确信可能有一种更简单的方法来做到这一点。

正如有些人要求提供数据:

In[224]: df = pd.DataFrame([['A','Field1', 'Value1'],['A', 'Field2', 'Value2'],['A', 'Field3', 'Value3'],['B','Field1', 'Value1'],['B', 'Field2', 'Value2'],['B', 'Field3', 'Value3'],['C','Field1', 'Value1'],['C', 'Field2', 'Value2'],['C', 'Field3', 'Value3']], columns=['Name', 'Field', 'Value'])
In[225]: df
Out[225]:
Name Field Value
0 A Field1 Value1
1 A Field2 Value2
2 A Field3 Value3
3 B Field1 Value1
4 B Field2 Value2
5 B Field3 Value3
6 C Field1 Value1
7 C Field2 Value2
8 C Field3 Value3
In[226]: pv = df.pivot('Name', 'Field')
In[227]: pv
Out[227]:
Value
Field Field1 Field2 Field3
Name
A Value1 Value2 Value3
B Value1 Value2 Value3
C Value1 Value2 Value3

我希望 pv 实际上是一个 DataFrame,例如:

Name   Field1  Field2  Field3                        
A Value1 Value2 Value3
B Value1 Value2 Value3
C Value1 Value2 Value3

一如既往,感谢大家的帮助!

最佳答案

数据本身采用您想要的格式,只是索引和列不是您想要的格式。因此,您所需要做的就是编辑列并重置索引:

pv = df.pivot('Name', 'Field')
pv.columns = [c[1] for c in pv.columns]
pv.reset_index(inplace=True)

关于python - 如何将一个数据框转换为另一个数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35345622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com