我遇到的問題是,當我執行describe()或head()處理 dataset.csv 時,數據集輸出顯示其中沒有列。我已經嘗試使用split()andstrip()但仍然相同這是我的代碼:import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport osfrom sklearn import preprocessingfrom sklearn.model_selection import train_test_splitimport csvdirectory = os.path.join('drive/My Drive/BCML/winequality-white.csv')text_file = open(directory, "r")lines = text_file.readlines()line = line.strip(";")line = line.strip()parsed_values = [] for index, line in enumerate(lines): split_columns = line.split(";") if index == 0: continue parsed_values.append([float(split_columns[0]), float(split_columns[1]), float(split_columns[2]), float(split_columns[3]), float(split_columns[4]), float(split_columns[5]), float(split_columns[6]), float(split_columns[7]), float(split_columns[8]), float(split_columns[9]), float(split_columns[10]), int(split_columns[11])])dataset = pd.read_csv(directory)輸出是:和:附加:我需要僅針對這種情況使用此數據集。所以我無法在互聯網上搜索和替換相同的數據集。當我用 Excel 打開 .csv 文件時,它的結構正常。我不知道為什么當我將循環更改split為for時split_columns = line.split(","),我會收到此錯誤:---------------------------------------------------------------------------ValueError Traceback (most recent call last)<ipython-input-16-fb83c4e7dfad> in <module>() 8 continue 9 ---> 10 parsed_values.append([float(split_columns[0]), float(split_columns[1]), float(split_columns[2]), float(split_columns[3]), float(split_columns[4]), float(split_columns[5]), float(split_columns[6]), float(split_columns[7]), float(split_columns[8]), float(split_columns[9]), float(split_columns[10]), int(split_columns[11])]) 11 12 print("Jumlah data (parsed) ", len(parsed_values))ValueError: could not convert string to float: '7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6\n'我真的很感激我能得到的每一個幫助
1 回答

Helenr
TA貢獻1780條經驗 獲得超4個贊
好像 csv 文件中有一個自定義分隔符。您可以簡單地添加一個 sep 參數并將其設置為 ; 像這樣
dataset = pd.read_csv(directory,sep=";")
添加回答
舉報
0/150
提交
取消