Pythonは浮動小数点数に面白いことをしているようですが、入力から浮動小数点数を生成します。浮動小数点は入力と同じにしておきたいと思います。入力出力浮動小数点の問題Python
ここで私は小さなテストデータセットを持っている:
import pandas as pd
df = {'ID': ['H1','H2','H3','H4','H5','H6'],
'Length': [72, 72, '', 72, 72,'' ],
'AA1': ['C','C','C','C','C','C'],
'AA2': ['W','W','W','W','W','W'],
'Freq': [0.14532872, 0.141868512,0.138408304, 0.14532872,0.138408304, 0.138408304 ],
'M': [-282.0570386,-279.1090993,-276.16116,-282.0570386,-274.7748657,-274.6160337]}
df = pd.DataFrame(df)
ように見えるを想定している。
df
Out[2]:
AA1 AA2 Freq ID Length M
0 C W 0.14532872 H1 72 -282.0570386
1 C W 0.141868512 H2 72 -279.1090993
2 C W 0.138408304 H3 -276.16116
3 C W 0.14532872 H4 72 -282.0570386
4 C W 0.138408304 H5 72 -274.7748657
5 C W 0.138408304 H6 -274.6160337
が、それは実際には、このよう予告では浮動小数点数の違いを探します'Freq'と 'M'列:
df
Out[2]:
AA1 AA2 Freq ID Length M
0 C W 0.145329 H1 72 -282.057039
1 C W 0.141869 H2 72 -279.109099
2 C W 0.138408 H3 -276.161160
3 C W 0.145329 H4 72 -282.057039
4 C W 0.138408 H5 72 -274.774866
5 C W 0.138408 H6 -274.616034
と私は単に私はしたくない行フィルタリングする私のスクリプトを実行します。「RESULTS.TXT」ファイルは入力と同じではありません奇妙な浮動小数点数が含まれてい
import pandas as pd
df = pd.read_csv('test.txt', sep='\t')
df2 = df[(df['Length'] != 0) & (df['AA1'] == 'C')& (df['AA2']== 'C')]
df2.to_csv('results.txt', sep = '\t', index=False)
を、そこになければなりません入力として浮動小数点数を出力する方法ですが、私は関連するトピックをオンラインで見つけることができませんでした。
これらは同じ数字です。ちょうど丸められています。 [here](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.set_option.html)のドキュメントでは、デフォルトの表示桁数は 'display.precision'の下で6であることを示しています – roganjosh