我有一个函数正在对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,但这也给了我一个错误 .

感谢您的任何帮助 .