代码之家  ›  专栏  ›  技术社区  ›  Micawber

在csv文件中写入熊猫数据帧混合整数和浮点

  •  1
  • Micawber  · 技术社区  · 6 年前

    我正在处理充满浮点数的熊猫数据帧,但每三行中就有一个整数(整行都是整数)。当我 print df ,所有显示的值都显示为浮点数(整数值添加了“`.000000``”),例如:

                    aromatics      charged        polar      unpolar
    Ac_obs_counts  712.000000  1486.000000  2688.000000  2792.000000
    Ac_obs_freqs     0.092732     0.193540     0.350091     0.363636
    Ac_pvalues       0.524752     0.099010     0.356436     0.495050
    Am_obs_counts   10.000000    59.000000    62.000000    50.000000
    Am_obs_freqs     0.055249     0.325967     0.342541     0.276243
    Am_pvalues       0.495050     0.980198     0.356436     0.009901
    Ap_obs_counts   18.000000    34.000000    83.000000    78.000000
    Ap_obs_freqs     0.084507     0.159624     0.389671     0.366197
    Ap_pvalues       0.524752     0.039604     0.980198     0.663366
    

    当我使用 df.iloc[range(0, len(df.index), 3)] ,我看到显示的整数:

                   aromatics  charged  polar  unpolar
    Ac_obs_counts        712     1486   2688     2792
    Am_obs_counts         10       59     62       50
    Ap_obs_counts         18       34     83       78
    Pa_obs_counts         47       81    125      144
    Pf_obs_counts         31       58     99      109
    Pg_obs_counts         27      106    102      108
    Ph_obs_counts          7       49     42       36
    Pp_obs_counts         15       83     45       65
    Ps_obs_counts         57      125    170      216
    Pu_obs_counts         14       62    102       84
    

    当我使用 df.to_csv("mydf.csv", sep=",", encoding="utf-8") ,将整数写入浮点;如何强制将这些行写入整数?将数据拆分为两个数据帧是否更好?

    提前谢谢。

    1 回复  |  直到 6 年前
        1
  •  1
  •   BENY    6 年前

    简单呼叫 object

    df.astype('object')
    Out[1517]: 
                  aromatics   charged     polar   unpolar
    Ac_obs_counts       712      1486      2688      2792
    Ac_obs_freqs   0.092732   0.19354  0.350091  0.363636
    Ac_pvalues     0.524752   0.09901  0.356436   0.49505
    Am_obs_counts        10        59        62        50
    Am_obs_freqs   0.055249  0.325967  0.342541  0.276243
    Am_pvalues      0.49505  0.980198  0.356436  0.009901
    Ap_obs_counts        18        34        83        78
    Ap_obs_freqs   0.084507  0.159624  0.389671  0.366197
    Ap_pvalues     0.524752  0.039604  0.980198  0.663366