我有以下代码:
import pandas as pd
file_path = 'https://archive.ics.uci.edu/ml/machine-learning-databases/voting-records/house-votes-84.data'
dataset2 = pd.read_csv(file_path, header=None, dtype=str)
v = dataset2.values
f = pd.factorize(v.ravel())[0].reshape(v.shape)
dataset1 = pd.DataFrame(f)
df = dataset1.astype('str')
dataset = df.values.tolist()
print (type (dataset))
print (type (dataset[1]))
print (type (dataset[1][1]))
目标是将所有数据集从1..n
转换为数据集中每个不同值的值,然后将其转换为列表列表,其中每个元素都是字符串。
上面的代码非常有效。但是,当我将数据集更改为:
file_path ='https://archive.ics.uci.edu/ml/machine-learning-databases/undocumented/connectionist-bench/vowel/vowel-context.data'
我犯了个错误。它如何也适用于此数据集?你知道吗
你需要了解你正在处理的数据。一个快速打印电话会帮助你意识到这个分隔符是不同的。你知道吗
此外,它似乎是数字数据;您不再需要
str
转换。你知道吗如果要猜测分隔符格式,可以使用
sep=None
:我不建议这样做,因为在使用推断分隔符加载数据时,panda很容易出错。你知道吗
相关问题 更多 >
编程相关推荐