Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.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_Dataframe_Sorting - Fatal编程技术网

Python 排序方法不比较单个数字

Python 排序方法不比较单个数字,python,pandas,dataframe,sorting,Python,Pandas,Dataframe,Sorting,我试图在python中使用pandas和percentage列按降序进行排序,不幸的是,它没有比较1位和2位浮点 这是我的代码: col = ['Amino Acid', 'Frequency', 'Percentage'] Pdf = pd.DataFrame(Ptable, columns=col) Pdf = Pdf.sort_values('Percentage', ascending=False, ignore_index=True) Ndf = pd.DataFrame(Ntab

我试图在python中使用pandas和percentage列按降序进行排序,不幸的是,它没有比较1位和2位浮点

这是我的代码:

col = ['Amino Acid', 'Frequency', 'Percentage']

Pdf = pd.DataFrame(Ptable, columns=col)
Pdf = Pdf.sort_values('Percentage', ascending=False, ignore_index=True)

Ndf = pd.DataFrame(Ntable, columns=col)
Ndf = Ndf.sort_values('Percentage', ascending=False, ignore_index=True)

Podf = pd.DataFrame(Potable, columns=col)
Podf = Podf.sort_values('Percentage', ascending=False, ignore_index=True, kind="heapsort")

NPodf = pd.DataFrame(NPotable, columns=col)
NPodf = NPodf.sort_values('Percentage', ascending=False, ignore_index=True)

print(Pdf)
print(Ndf)
print(Podf)
print(NPodf)
这是示例输出,检查第三个和第四个表:

 Amino Acid  Frequency Percentage
 0          K        635      44.13
 1          R        526      36.55
 2          H        278      19.32


 Amino Acid  Frequency Percentage
 0          E        809      59.84
 1          D        543      40.16


 Amino Acid  Frequency Percentage
 0          C        270       8.44
 1          S        973      30.41
 2          T        635      19.84
 3          N        508      15.88
 4          Q        489      15.28
 5          Y        325      10.16


 Amino Acid  Frequency Percentage
 0          I        502       9.93
 1          F        423       8.37
 2          M        286       5.66
 3          L       1052      20.82
 4          W        143       2.83
 5          G        677      13.40
 6          P        672      13.30
 7          A        650      12.86
 8          V        648      12.82

请帮忙

这一定是数据类型的问题,我建议您检查列的数据类型:

df.dtypes
并键入该列,如果该列不是浮动的,请重试:

df['Percentage'] = df['Percentage'].astype(float)

这看起来像是词典排序。百分比列的数据类型是什么?这很有效!!!非常感谢你!不客气。如果你发现答案是有用的,请考虑支持和回答答案,以保持堆栈溢出循环完整: