Python 将数据集转换为数组,以便在Scikit Learn中建模
我们可以在Pandas数据帧上运行scikit学习模型,还是需要将数据帧转换为NumPy阵列?您可以将Python 将数据集转换为数组,以便在Scikit Learn中建模,python,pandas,scikit-learn,Python,Pandas,Scikit Learn,我们可以在Pandas数据帧上运行scikit学习模型,还是需要将数据帧转换为NumPy阵列?您可以将Pandas.DataFrame与sklearn一起使用,例如: import pandas as pd from sklearn.cluster import KMeans data = [(0.2, 10), (0.3, 12), (0.24, 14), (0.8, 30), (0.9, 32), (0.85,
Pandas.DataFrame
与sklearn
一起使用,例如:
import pandas as pd
from sklearn.cluster import KMeans
data = [(0.2, 10),
(0.3, 12),
(0.24, 14),
(0.8, 30),
(0.9, 32),
(0.85, 33.3),
(0.91, 31),
(0.1, 15),
(-0.23, 45)]
p_df = pd.DataFrame(data)
kmeans = KMeans(init='k-means++', n_clusters=3, n_init=10)
kmeans.fit(p_df)
结果:
>>> kmeans.labels_
array([0, 0, 0, 2, 2, 2, 2, 0, 1], dtype=int32)
熊猫数据帧非常擅长在需要时充当Numpy数组。如果有疑问,您可以始终使用
values
属性来获取Numpy表示(df.values
将为您提供DataFrame中数值的Numpy数组df
显示如何处理具有命名列的DataFrame会提供更多信息,因为这会导致更多问题。将这两种方法结合起来作为另一种答案会更好。