3 回答

TA貢獻2051條經驗 獲得超10個贊
事實上,就是按照你要求的去做。問題在于,您讀取浮點數,并且由于語言讀取浮點數的方式,它們會產生一些微小的變化。
在這種情況下,使用此代碼,它將滿足您的需要。
combined_csv.to_csv( "combined_csv.csv", index=False, float_format='%.3f')

TA貢獻1875條經驗 獲得超5個贊
使用之前答案的替代方案float_format:
import pandas as pd
from decimal import Decimal
from io import StringIO
import sys
data = '''\
a,b,c,d,e,f
49.108,55.738,30.106,41.681,54.896,32.99
94.107,55.739,3.105,41.671,45.897,23.98
'''
f = StringIO(data)
df = pd.read_csv(f)
df.to_csv(sys.stdout, index=False)
df = df.round(decimals=4)
df.to_csv(sys.stdout, index=False)
f.seek(0)
converters = {k: Decimal for k in 'abcdef'}
df = pd.read_csv(f, converters=converters)
df.to_csv(sys.stdout, index=False)

TA貢獻1872條經驗 獲得超4個贊
您可以將 glob(一個用于處理文件的 Python 庫)與 pandas 結合使用,以更好地組織這些數據。glob 可以通過使用正則表達式匹配來獲取文件名來打開多個文件:
import glob
files = glob.glob("file*.csv")
df_list = []
for filename in files:
data = pd.read_csv(filename)
df_list.append(data)
df = pd.concat(df_list)
print(files)
添加回答
舉報