gpt4 book ai didi

python - 如何根据标题名称移动 csv 中的数据并将其移动到同一列?

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:18 26 4
gpt4 key购买 nike

我有一个包含机场数据的 csv 文件,如下所示:

Name     | State | Runway | data1 | data2 | data3 | Runway | data1 | data2 | data3 | etc
------------------------------------------------------------------------------------
Abu Dabi | UAE | 01 | 9292 | 2229 | 8282 | 02 | 9929 | 9922 | 2828 | etc

我怎样才能把它改成这样:

Name     | State | Runway | data1 | data2 | data3 |
---------------------------------------------------
Abu Dabi | UAE | 01 | 9292 | 2229 | 8282 |
| 02 | 9929 | 9922 | 2828 |
| etc | etc | etc | etc |

谢谢。

最佳答案

这是一个带有 groupby 列名和 concat 的:

# if you start from your csv
# pandas will rename repeated columns
# e.g. you would have Runway, Runway.1,...
df = pd.read_csv('data.csv')

# fix repeated column names:
df.columns = [col.split('.')[0] for col in df.columns]

new_df = df.set_index(['Name','State'])
pd.concat(g for x,g in new_df.groupby((new_df.columns =='Runway').cumsum(),
axis=1))

输出:

                Runway  data1  data2  data3
Name State
Abu Dabi UAE 1 9292 2229 8282
UAE 2 9929 9922 2828

关于python - 如何根据标题名称移动 csv 中的数据并将其移动到同一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56927943/

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