Python Pandas 重新并排排列列以进行计数
Python Pandas Reordering columns side by side for count
我有一个名为 by_country 的 DataFrame。在这个 DF 中,我有多个列,前半部分是按年龄划分的答案总数,另一半是按年龄划分的答案数量 'yes'。
我将为每个不同年龄组并排重新排序总数和 'yes' 答案。有没有不用手动输入列的更简单的方法?
这是我的专栏:
by_country.columns = ['count_18-24', 'count_25-34', 'count_35-44', 'count_45-54',
'count_55-64', 'count_65', 'count_no_reply', 'count_18_under',
'sum_18-24', 'sum_25-34', 'sum_35-44', 'sum_45-54', 'sum_55-64',
'sum_65', 'sum_no_reply', 'sum_18_under']
我要点赞
by_country.columns = ['count_18-24','sum_18-24', 'count_25-34','sum_25-34', 'count_35-44', 'sum_35-44','count_45-54','sum_45-54', 'count_55-64','sum_55-64','count_65', 'sum_65','count_no_reply', 'sum_no_reply', 'count_18_under','sum_18_under']
我对其他更大的 DataFrame 也有类似的问题,很难将它们全部键入。非常感谢任何建议和建议!
似乎您可以使用 sorted
和采用最后一个 _
分隔项的键对列进行排序:
by_country.columns = sorted(by_country.columns, key=lambda x: x.split('_')[-1])
我有一个名为 by_country 的 DataFrame。在这个 DF 中,我有多个列,前半部分是按年龄划分的答案总数,另一半是按年龄划分的答案数量 'yes'。
我将为每个不同年龄组并排重新排序总数和 'yes' 答案。有没有不用手动输入列的更简单的方法?
这是我的专栏:
by_country.columns = ['count_18-24', 'count_25-34', 'count_35-44', 'count_45-54',
'count_55-64', 'count_65', 'count_no_reply', 'count_18_under',
'sum_18-24', 'sum_25-34', 'sum_35-44', 'sum_45-54', 'sum_55-64',
'sum_65', 'sum_no_reply', 'sum_18_under']
我要点赞
by_country.columns = ['count_18-24','sum_18-24', 'count_25-34','sum_25-34', 'count_35-44', 'sum_35-44','count_45-54','sum_45-54', 'count_55-64','sum_55-64','count_65', 'sum_65','count_no_reply', 'sum_no_reply', 'count_18_under','sum_18_under']
我对其他更大的 DataFrame 也有类似的问题,很难将它们全部键入。非常感谢任何建议和建议!
似乎您可以使用 sorted
和采用最后一个 _
分隔项的键对列进行排序:
by_country.columns = sorted(by_country.columns, key=lambda x: x.split('_')[-1])