看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)有以下一个 DataFrame 名为 df,它的列标签从第三个开始为日期形式的字符串,现在需要将这些日期按最近到更早排列。
import pandas as pd
demo = {
'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Apr 2022': ['New', 'Los', 'Chic', 'Hous'],
'aPRil 2024': ['York', 'Anges', 'cago', 'ston'],
'Vanilla': ['nfd', 'bdfh', 'tyii', 'liu'],
'aUg 2023': ['NewYork', 'LosAngeles', 'Chicago', 'Houston'],
'deC 2022': ['Neork', 'Logeles', 'Chago', 'Hoston']
}
df = pd.DataFrame(demo)
df
'''
Name Age Apr 2022 aPRil 2024 Vanilla aUg 2023 deC 2022
0 Alice 25 New York nfd NewYork Neork
1 Bob 30 Los Anges bdfh LosAngeles Logeles
2 Charlie 35 Chic cago tyii Chicago Chago
3 David 40 Hous ston liu Houston Hoston
'''
即结果为:
'''
Name Age Vanilla aPRil 2024 aUg 2023 deC 2022 Apr 2022
0 Alice 25 nfd York NewYork Neork New
1 Bob 30 bdfh Anges LosAngeles Logeles Los
2 Charlie 35 tyii cago Chicago Chago Chic
3 David 40 liu ston Houston Hoston Hous
'''
Python 代码如下:
df.sort_index(
axis=1,
key=lambda x: pd.to_datetime(x,
errors='coerce',
format='mixed'),
ascending=False,
na_position='first',
)
'''
Name Age Vanilla aPRil 2024 aUg 2023 deC 2022 Apr 2022
0 Alice 25 nfd York NewYork Neork New
1 Bob 30 bdfh Anges LosAngeles Logeles Los
2 Charlie 35 tyii cago Chicago Chago Chic
3 David 40 liu ston Houston Hoston Hous
'''
查看相关链接中的知识。
(完)
更新时间:2024-08-19 10:09:49 标签:pandas python 习题 排列 索引 标签