我有一个函数正在对pandas数据帧进行一些数据处理 . 数据框中的一列是一个numpy数组 . 我将数据帧保存到csv然后当我尝试读取它时,它将数组作为字符串读取 . 我想弄清楚如何克服这个问题 .
处理完数据后,我把我的数据帧写成csv:
df.to_csv('./dataframe')
在另一个笔记本中,我将从内存中读取此数据帧:
df = pd.read_csv('./dataframe')
然后我尝试用numpy数组提取列并将它们全部组合成一个大的2D数组:
npArray = np.zeros((df.shape[0], 4000)) #each numpy array
#in the dataframe has 4000 elements
i = 0
for vector in train:
npArray[i] = vector[0]
i += 1
当我尝试这样做时,我收到以下错误:
ValueError: could not convert string to float: '['
这种情况正在发生,因为在我读回文件后,它正在读取它作为字符串而不是numpy数组 . 我已经尝试在read_csv函数中添加dtype参数并指定np.array,但这也给了我一个错误 .
感谢您的任何帮助 .