gpt4 book ai didi

python - 在 Pandas 中设置索引

转载 作者:行者123 更新时间:2023-11-28 22:24:31 28 4
gpt4 key购买 nike

我正在处理与 this 相关的奥运会数据集

这是数据框的样子:

                Unnamed: 0  # Summer  01 !  02 !  03 !  Total  # Winter  \
0 Afghanistan (AFG) 13 0 0 2 2 0
1 Algeria (ALG) 12 5 2 8 15 3
2 Argentina (ARG) 23 18 24 28 70 18
3 Armenia (ARM) 5 1 2 9 12 6
4 Australasia (ANZ) [ANZ] 2 3 4 5 12 0

我想做以下事情:

  • 拆分国家名称和国家代码并将国家名称添加为数据帧索引
  • 从国家名称中删除多余的不必要字符。

例如更新的列应该是:

                    Unnamed: 0  # Summer  01 !  02 !  03 !  Total  # Winter  \
0 Afghanistan  13 0 0 2 2 0
1 Algeria  12 5 2 8 15 3
2 Argentina  23 18 24 28 70 18
3 Armenia  5 1 2 9 12 6
4 Australasia  2 3 4 5 12 0

请告诉我实现此目标的正确方法。

最佳答案

您可以使用正则表达式并替换为它,即

df = df.replace('\(.+?\)|\[.+?\]\s*','',regex=True).rename(columns={'Unnamed: 0':'Country'}).set_index('Country')

输出:

               Summer  01 !  02 !  03 !  Total  WinterCountry                                               Afghanistan        13     0     0     2      2       0Algeria            12     5     2     8     15       3Argentina          23    18    24    28     70      18Armenia             5     1     2     9     12       6Australasia         2     3     4     5     12       0

If you dont want to rename then .set_index('Unnamed: 0')

Or Thanks @Scott a much easier solution is to split by ( and select the first element i.e

df['Unnamed: 0'] = df['Unnamed: 0'].str.split('\(').str[0] 

关于python - 在 Pandas 中设置索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46323488/

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