Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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 Panda数据帧排序(带月-年)_Python_Sorting_Pandas_Graph - Fatal编程技术网

Python Panda数据帧排序(带月-年)

Python Panda数据帧排序(带月-年),python,sorting,pandas,graph,Python,Sorting,Pandas,Graph,我是python和pandas的初学者,在groupby操作之后,我很难对数据帧进行排序。我可以在groupby和count之后获得排序数据,但是当我将所有数据放在另一个数据框中时,我不会得到排序数据 这是我的尝试 conn = sqlite3.connect('Demo.sqlite') df = pd.read_sql("SELECT * FROM Table where Column LIKE 'x.%'", conn) pf = pd.read_sql("SELECT * FROM

我是python和pandas的初学者,在groupby操作之后,我很难对数据帧进行排序。我可以在groupby和count之后获得排序数据,但是当我将所有数据放在另一个数据框中时,我不会得到排序数据

这是我的尝试

conn = sqlite3.connect('Demo.sqlite')

df = pd.read_sql("SELECT * FROM Table where Column  LIKE 'x.%'", conn)
pf = pd.read_sql("SELECT * FROM Table", conn)

df['DateTime'] = df['DATE'].apply(lambda x: dt.datetime.fromtimestamp(x).strftime('%b %Y'))
pf['DateTime'] = pf['DATE'].apply(lambda x: dt.datetime.fromtimestamp(x).strftime('%b %Y'))

df1 = df.set_index('DateTime', drop=False)
pf1 = pf.set_index('DateTime', drop=False)

df1 = df1.sort(['DateTime'])
pf1 = pf1.sort(['DateTime'])

R1= df1['DateTime'].groupby(lambda x: x)
R2= pf1['DateTime'].groupby(lambda x: x)
TT= TotalBuild.count() - PrivateBuild.count()

result = pd.DataFrame({'R1': R1.count(),
                       'TT': TT,
                       'R2': R2.count()
                       })
这是结果数据帧的输出


我想按月份和年份对数据帧进行排序。目前数据框是按月份排序的,这就是为什么一月的所有数据都显示在一起。数据排序后,我想画条形图。

一个简单的方法是将索引转换为日期,排序,然后再转换回月份-年份

result.index = pd.to_datetime(result.index)
result.sort_index(inplace=True)
result.index = monthly_transpose.index.strftime('%B-%Y')

转换为日期时,pandas将月份年份转换为每个月的第一个日期nad,因此可以进行排序。希望有帮助。

您可以将图像上载到stackoverflow,并将其嵌入到您的问题中-请参阅:。不需要上传到有问题的网站。谢谢你让我知道。我没有足够的声誉,所以我包括链接。一旦我有了好名声。我将在这个问题中包括图像。最重要的是,如果你知道答案,那就发布解决方案。你有没有尝试过将DateTime列拆分为两列,月和年?我试着把月份和月份分开,但是没有用。如果你有解决方案,请你张贴?