我想计算X列作为矩阵的平均值,但收到主题错误消息,但是我试图通过Int
或to_numeric
将数据集转换为整数,但没有成功
data = pd.read_csv('hw03_problem2.csv', skipinitialspace=True)
trainingYdf = data['mpg']
trainingXdf = data[['cylinders', 'displacement', 'horsepower', 'weight']]
Y = np.matrix(trainingYdf).T
X = np.matrix(trainingXdf)
X_columnMeans = X.mean(axis=0)
请查看您的输入csv。如果有任何一行不包含数字,pandas read_csv将把每个单元格解释为字符串。因此,您的矩阵将不包含数字,而是字符串,这将导致您观察到的错误。使用
pd.read_csv('hw03_problem2.csv', skipinitialspace=True, dtype=int)
将通知pandas,您需要整数(替换为csv包含的任何数字格式)。但是,如果csv中有包含文本的单元格,则仍然会失败OP编辑了他的问题后
您的
trainingYdf
列仍将包含字符串矩阵,因为np.matrix不会转换为数值将导致
在转换为np.matrix之前,尝试转换“trainingYdf”中的每个条目(假设其为一维)
trainingYdf = [float(x) for x in trainingYdf]
相关问题 更多 >
编程相关推荐