我是ML,pandas和numpy的新手。
我正在查看线性回归程序的jupyter文件。我在那里看到
dataset = pd.read_csv('C:\First ML Projects/winequality.csv')
。
当我做type(dataset)
时,我得到了pandas.core.frame.DataFrame
。之所以有意义,是因为数据集是使用pd
然后有这段代码,
X = dataset[['fixed acidity', 'volatile acidity', 'citric acid', 'residual sugar', 'chlorides', 'free sulfur dioxide', 'total sulfur dioxide', 'density', 'pH', 'sulphates','alcohol']].values
当我做type(X)
时,我得到了numpy.ndarray
。
第一个问题:X
为什么不采用pandas.DataFrame
格式?
第二:当没有提及numpy或np时,如何将其转换为numpy.ndarray
?
第三:pandas.DataFrame和numpy.ndarray两者都存储数据有什么区别?
答案 0 :(得分:1)
X = dataset[['fixed acidity', ..., 'alcohol']]
意味着该DataFrame正在由列名列表索引。结果仍然是一个DataFrame,仅包含选定的列。但是随后将方法pd.df.values()应用于此DataFrame。此方法返回基础的NumPy数组。