python - 提取值 (snow on ground cm) >0(大于 0)的月份中的最大天数

标签 python python-3.x pandas dataframe

我正在尝试显示地面积雪值大于零的月份的最大日期。这是数据框的头部。它每天都有 2018 年全年的阅读资料。

这是我到目前为止能够得到的:

enter image description here

降雪最少的日期

dfsmin = df.rename(columns={'Snow on Grnd (cm)':'Snow_on_Grnd_cm'}, inplace=True)
​
dfs_minsnow_date1 = df.loc[df.groupby('Month').Snow_on_Grnd_cm.idxmin(),:]
​
dfs_minsow_date_noround = dfs_minsnow_date1[['Month', 'Day', 'Snow_on_Grnd_cm']]     
​
dfs_minsow_date = dfs_minsow_date_noround.round(1)
​
d ={1:'January',2:'February',3:'March',4:'April',5:'May',6:'June',7:'July',8:'August',9:'September',10:'October',11:'November',12:'December'}
​
dfs_minsow_date.Month = dfs_minsow_date.Month.map(d)
​
dfs_minsow_date.set_index('Month')
​
dfs_minsow_date.transpose()

输出

[![Output:][1]][1]

enter image description here

编辑:感谢您的声望点,上传的图片!

最佳答案

假设您有标记为 DayMonthSnow_on_Grnd_cm 的数字系列,您可以先按雪量过滤,按天排序,然后下降按月重复:

res = df.query('Snow_on_Grnd_cm > 0')\
        .sort_values('Day', ascending=False)\
        .drop_duplicates('Month')

请注意,如果特定月份的所有值均为 0,则该月份的结果将不会有一行。

关于python - 提取值 (snow on ground cm) >0(大于 0)的月份中的最大天数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53876797/

相关文章:

python - tkinter 按钮无法打开不同的 python 代码

linux - 使用Python通过Serial读取不固定数量的字节

python - 使用 pickle.load() 时没有名为 dill 的模块

python - 我正在尝试用 python 压缩文件,但似乎很挣扎

python - 选择和切片属于 PeriodIndex 的列

python - 如何定义 Pandas 中绘制图形的范围?

python - 如何将列表中的每个元素与所有其他元素一起迭代

python - google.api_core.exceptions.ServiceUnavailable : 503 Name resolution failure

python - connection.commit() 性能影响

python - 打印用于复制和粘贴的 numpy 数组