【发布时间】:2018-12-20 04:58:46
【问题描述】:
我有一个 .csv 数据集,其中三列的格式如下
t X Y
0.040662 1.041667 1
0.139757 1.760417 2
0.144357 1.190104 1
0.145341 1.047526 1
0.145401 1.011882 1
0.148465 1.002970 1
而不是手动写成
x_final = np.array([1.041667, 1.760417, 1.190104, 1.047526, 1.011882, 1.002970])
v_observations = np.array([1, 2, 1, 1, 1, 1])
我想通过将 pandas 数据帧复制到一个数组来自动执行它,这是我的代码
import numpy as np
from numpy.linalg import inv
import pandas as pd
df = pd.read_csv('testdata.csv')
print(df)
df.dropna(inplace=True)
X = df.drop('Y', axis=1)
y = df['Y']
time = df.drop('t', axis=1)
print(X)
d1= np.array([X])
d2 = np.array([y])
x_final = np.array([d1])
y_final = np.array([d2])
z = np.c_[x_final, y_final]
但是,当我尝试运行我的代码时出现此错误。
ValueError: cannot copy sequence with size 6 to array axis with dimension 2
我该如何解决这个错误?
【问题讨论】:
-
怎么样:
z = df.dropna().drop('t', axis=1).values -
错误从这里开始
d1= np.array([X])在我尝试逐行运行之前到达那里。
标签: python python-3.x pandas numpy