我在试着找出哪一天的新病例最多,并按国家分组。数据集包含国家/地区时间序列数据列表,其中包括COVID总病例数、新病例数、新测试数等。
预期输出
Country Date Cases MaxNew_Cases
USA 2020-06-23 1988
Singapore 2020-05-21 456
Franch 2020-03-12 765
我试过了:
df_test_date.loc[df_test_date['new_cases'].idxmax()]
df1=df_test_date[['location','date']][df_test_date.new_cases == df_test_date['new_cases'].max()]
new_df = df_test_date.groupby('location')['Log_New_Cases'].max()
发布于 2020-06-30 14:42:24
import pandas as pd
data = {
'Country': ['USA', 'Singapore', 'France', 'USA', 'Singapore', 'France', 'USA', 'Singapore', 'France'],
'Date': ['2020-06-01', '2020-06-01', '2020-06-01', '2020-06-02', '2020-06-02', '2020-06-02', '2020-06-03', '2020-06-03', '2020-06-03'],
'New_Cases': [100, 200, 300, 600, 500, 400, 123, 345, 523]
}
df = pd.DataFrame(data)
idxmax = df.groupby('Country')['New_Cases'].idxmax()
df.iloc[idxmax]
数据帧
Country Date New_Cases
0 USA 2020-06-01 100
1 Singapore 2020-06-01 200
2 France 2020-06-01 300
3 USA 2020-06-02 600
4 Singapore 2020-06-02 500
5 France 2020-06-02 400
6 USA 2020-06-03 123
7 Singapore 2020-06-03 345
8 France 2020-06-03 523
输出
Country Date New_Cases
8 France 2020-06-03 523
4 Singapore 2020-06-02 500
3 USA 2020-06-02 600
https://stackoverflow.com/questions/62659455
复制