我遇到的问题是,当我执行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
提交
取消