Pandas sort()忽略负号

时间:2016-02-13 18:20:54

标签: python pandas

我想对大熊猫df进行排序,但我对负值有疑问。

import pandas as pd
df = pd.read_csv('File.txt', sep='\t', header=None)

#Suppress scientific notation (finally)
pd.set_option('display.float_format', lambda x: '%.8f' % x)

print(df)
print(df.dtypes)
print(df.shape)

b = df.sort(axis=0, ascending=True)
print(b)

这使我按升序排列,但完全无视标志。

SPATA1 -0.00000005
HMBOX1  0.00000005
SLC38A11 -0.00000005
RP11-571M6.17  0.00000004
GNRH1 -0.00000004
PCDHB8 -0.00000004
CXCL1  0.00000004
RP11-48B3.3 -0.00000004
RNFT2 -0.00000004
GRIK3 -0.00000004
ZNF483  0.00000004
RP11-627G18.1  0.00000003

任何想法我做错了什么?

由于

1 个答案:

答案 0 :(得分:2)

使用以下命令加载文件:

df = pd.read_csv('File.txt', sep='\t', header=None)

由于不推荐sort(....),您可以使用sort_values

b = df.sort_values(by=[1], axis=0, ascending=True)

其中[1]是您的值列。对我来说,这会返回:

                0         1
0           ACTA1 -0.582570
1          MT-CO1 -0.543877
2             CKM -0.338265
3          MT-ND1 -0.306239
5          MT-CYB -0.128241
6            PDK4 -0.119309
8           GAPDH -0.090912
9            MYH1 -0.087777
12    RP5-940J5.9 -0.074280
13           MYH2 -0.072261
16         MT-ND2 -0.052551
18           MYL1 -0.049142
19            DES -0.048289
20          ALDOA -0.047661
22           ENO3 -0.046251
23         MT-CO2 -0.043684
26  RP11-799N11.1 -0.034972
28          TNNT3 -0.032226
29         MYBPC2 -0.030861
32          TNNI2 -0.026707
33         KLHL41 -0.026669
34           SOD2 -0.026166
35           GLUL -0.026122
42         TRIM63 -0.022971
47           FLNC -0.018180
48         ATP2A1 -0.017752
49           PYGM -0.016934
55   hsa-mir-6723 -0.015859
56           MT1A -0.015110
57           LDHA -0.014955
..            ...       ...
60   RP1-178F15.4  0.013383
58          HSPB1  0.014894
54            UBB  0.015874
53        MIR1282  0.016318
52          ALDH2  0.016441
51            FTL  0.016543
50  RP11-317J10.2  0.016799
46   RP11-290D2.6  0.018803
45           RRAD  0.019449
44           MYF6  0.019954
43          STAC3  0.021931
41   RP11-138I1.4  0.023031
40         MYBPC1  0.024407
39         PDLIM3  0.025442
38         ANKRD1  0.025458
37           FTH1  0.025526
36        MT-RNR2  0.025887
31          HSPB6  0.027680
30   RP11-451G4.2  0.029969
27    AC002398.12  0.033219
25        MT-RNR1  0.040741
24          TNNC1  0.042251
21          TNNT1  0.047177
17         MT-ND3  0.051963
15       MTND1P23  0.059405
14             MB  0.063896
11           MYL2  0.076358
10         MT-ND5  0.076479
7             CA3  0.100221
4          MT-ND6  0.140729

[18152 rows x 2 columns]