首先使用np.array()函数把DataFrame转化为np.ndarray(),再利用tolist()函数把np.ndarray()转为list,示例代码如下:
# -*- coding:utf-8-*-
import numpy as np
import pandas as pd
data_x = pd.read_csv("/features.csv",usecols=[2,3,4]) #pd.dataframe
data_y = pd.read_csv("/features.csv",usecols=[5])
train_data = np.array(data_x) #np.ndarray()
train_x_list=train_data.tolist() #list
print(train_x_list)
print(type(train_x_list))pandas数据
如何把pandas dataframe对象或series对象转换成list
>>> import pandas as pd
>>> df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9],
'b':[3,5,6,2,4,6,7,8,7,8,9]})
>>> df['a'].values.tolist()
[1, 3, 5, 7, 4, 5, 6, 4, 7, 8, 9]
or you can just use
>>> df['a'].tolist()
[1, 3, 5, 7, 4, 5, 6, 4, 7, 8, 9]
To drop duplicates you can do one of the following:
>>> df['a'].drop_duplicates().values.tolist()
[1, 3, 5, 7, 4, 6, 8, 9]
>>> list(set(df['a'])) # as pointed out by EdChum
[1, 3, 4, 5, 6, 7, 8, 9]
# convert df to list[list]
>>> df.values.tolist()
# conver series to list
>>> Series.tolist()