Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按日期分组可以';不能按熊猫分类吗?_Python_Pandas - Fatal编程技术网

Python 按日期分组可以';不能按熊猫分类吗?

Python 按日期分组可以';不能按熊猫分类吗?,python,pandas,Python,Pandas,代码如下: 查找每天提交的用户数。它必须从最新的到较旧的排序 import pandas as pd a=pd.read_csv("dataset.txt") b=a[['date_su','users']] b.sort_values(['date_su'],ascending=False).groupby(['date_su','users'])['date_su'].count() 结果是: date_su users 1/8/2018

代码如下:

查找每天提交的用户数。它必须从最新的到较旧的排序

import pandas as pd
a=pd.read_csv("dataset.txt")
b=a[['date_su','users']]
b.sort_values(['date_su'],ascending=False).groupby(['date_su','users'])['date_su'].count()
结果是:

date_su                  users
1/8/2018                Jk_28_j                         1
                        KT1w_19_MN                     33
                        KT1w_19_USER                    9
                        KT1w_19_USER2                   5
                        KT1w_19_USER3                   7
                        KT1w_19_USER32                  1
                        KT1w_19_USER35                  8
                        KT1w_19_USER36                  7
                        KT1w_19_USER8                   8
                        KT1w_19_USER9                   6
                        MRS  sffdf                      1
                        SINBAo                          1
                        VIJJHxAFNI                      1
                        W7jj24693U242                   1
                        WW2pt710U455                    1
10/7/2018               idMIa9p0c                       1
                        KTw_19_MNG1                     4
                        KTw_19_MNG2                    18
                        KTw_19_USER1                    4
                        KTw_19_USER22                   8
                        KTw_19_USER32                   7
                        KTw_19_USER33                   5
                        KTw_19_USER34                   1
                        KTw_19_USER35                   3
10/8/2018               KTw_19_MNG1                     8
                        KTw_19_USER1                    5
                        KTw_19_USER2                    2
                        KTw_19_USER3                    3

最后一行似乎不是按日期排序,而是按用户排序。尽管它说的是对值进行排序(['date\u su']。如何使其按预期工作?

我认为需要通过参数将值转换为日期时间
解析日期
,如有必要,还可以添加参数
dayfirst=True

b=pd.read_csv("dataset.txt", 
              parse_dates=['date_su'], 
              usecols=['date_su','users'], 
              dayfirst=True)
然后排序
多索引

b.groupby(['date_su','users'])['date_su'].count().sort_index(level=[0,1], ascending=[False, True])
或者使用参数
sort=False
ascending=False
避免在groupby中排序:

b.sort_values(['date_su'],ascending=False).groupby(['date_su','users'], sort=False)['date_su'].count()

你能显示dataset.txt文件吗?几行可能会有帮助。这解决了问题,但它似乎是升序的,如果我将升序改为False,它不会改变?@user10319541-在示例数据中
10/7/2018
10 July 2018
并且应该是第一行?它应该首先显示最近的一行,即2018年8月10日。现在是第一行的7月。