熊猫 - 格式化csv文件将列名添加到列
问题描述:
我已经从机器学习存储库下载了一个数据集(.data
),并将其保存为cvs
文件。然后我用pandas
阅读:熊猫 - 格式化csv文件将列名添加到列
dataset = pd.read_csv('mileage.csv')
它打印像这样:
,但现在我需要添加(命名)columns
的数据,我试图用做:
dataset = pd.read_csv('mileage.csv', names=["mpg", "cylinders", "displacement", "horsepower", "weight", "acceleration", "model year", "origin", "car name"])
这一点,但是,打印:
,所有数据被挤压成一列...
我要补充“逗号”,以cvs
数据第一?
如何正确预处理这些数据,每列的每个数据?
答
您可以使用assign
来初始化新列。看起来有些列已经在原始数据中,所以我将使用有条件的字典理解来仅获得新的数据。
new_cols = ["mpg", "cylinders", "displacement", "horsepower", "weight", "acceleration", "model year", "origin", "car name"]
dataset = pd.read_csv('mileage.csv')
dataset = dataset.assign(**{c: None for c in new_cols if c not in dataset})
直接访问一些样本数据:
import urllib2
url = 'https://raw.githubusercontent.com/chrisjameskirkham/car-mpg/master/auto-mpg-nameless.csv'
response = urllib2.urlopen(url)
dataset = pd.read_csv(response).assign(**{c: None for c in new_cols if c not in dataset})
检查出'pd.read_csv' – jacoblaw