我不明白爲什麼熊貓數據框四捨五入我的列中的值,我劃分其他兩列的值。我希望新小柱中的數字有兩位小數,但是數值是四捨五入的。我檢查了列的dtype,並且都是「float64」。爲什麼python熊貓數據框四捨五入我的價值觀?
import pandas as pd
import numpy as np
# CURRENT DIRECTORY
cd = os.path.dirname(os.getcwd())
# concatenate csv files
dfList = []
for root, dirs, files in os.walk(cd):
for fname in files:
if re.match("output_contigs_SCMgenes.csv", fname):
frame = pd.read_csv(os.path.join(root, fname))
dfList.append(frame)
df = pd.concat(dfList)
#replace nan in SCM column with 0
df['SCM'].fillna(0, inplace=True)
#add column with genes/SCM
df['genes/SCM'] = df['genes']/df['SCM']
輸出如下:
genome contig genes SCM genes/SCM
0 20900 48 1 0 inf
1 20900 37 130 103 1
2 20900 35 1 1 1
3 20900 1 79 66 1
4 20900 66 5 3 2
但我想,我的最後一列不包含圓值,但值至少有2位小數。
我無法複製它。你的Python,Pandas和Numpy版本是什麼? – MaxU
不,這仍然給出相同的輸出不幸 – Gravel
我使用Anaconda3 – Gravel