Python中的Dataframe vs Numpy数组

时间:2018-04-15 16:38:27

标签: python numpy

我对Python中的数据帧和numpy数组有疑问。当我们使用pandas读取任何csv文件时,它存储在数据帧中。在数据操作,以列等方式查看数据时,Dataframe非常有用。但是,一些预处理函数(如Imputer)不适用于Dataframe。对于这些函数,我们必须在numpy数组中获取数据,这使得数据操作变得困难 在下面的代码中,当y存储为int64数组时,X是numpy模块的ndarray对象。我不能在X上使用追加功能。任何人都可以建议如何纠正这个

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

dataset = pd.read_csv('titanic.csv')
y = dataset.iloc[:,1].values
X= dataset.iloc[:,2:12].values

1 个答案:

答案 0 :(得分:0)

你真的应该给我们更多关于你想要/期望的信息,但是我的猜测是这样的:

In [6]: Y=np.arange(3)                   # 1d
In [7]: X=np.arange(12).reshape(3,4)     # 2d
In [8]: np.column_stack([Y,X])
Out[8]: 
array([[ 0,  0,  1,  2,  3],
       [ 1,  4,  5,  6,  7],
       [ 2,  8,  9, 10, 11]])

这应该与

相同
dataset.iloc[:,[1,2,3,...12]].values

虽然为什么你没有dataset.iloc[:,1:12]