【发布时间】:2020-07-31 07:46:17
【问题描述】:
我正在使用包含 4 列的 Pandas DataFrame:“TV”、“Radio”、“Newspaper”和“Sales”。我需要创建两个NumPy 数组:X 包含前 3 列,y 包含“销售”列。
我发现有两种方法可以从Pandas DataFrame 创建NumPy 数组:
import numpy as np
X = np.array(adver_data.iloc[:,0:3].values)
y = np.array(adver_data["Sales"].values)
和:
import numpy as np
X = adver_data[['TV', 'Radio', 'Newspaper']].values
y = adver_data[['Sales']].values
问题是,即使这两种方式实际上创建了一个NumPy 数组,但我的代码为这两种方式给出了不同的结果,我不知道为什么,因为我看不到这两种方式的数组是如何的不同。
有什么区别?
【问题讨论】:
-
如果他们给你相同的 numpy 数组,那么问题可能出在其他代码中。
-
注意:每pandas documentation应该使用
.to_numpy()而不是.values。 -
提供一个样本数据集,您的输出和预期输出将有助于更好地理解您的问题并更轻松地回答您的问题:)
标签: python arrays numpy dataframe