連續資料的離散化
阿新 • • 發佈:2018-12-10
1.分段類散
同步pandas.cut對值進行分段劃分,進行離散化。類散化後是分段的index。
import pandas as pd
data = [1,3,6,20,50,100]
w =[0,10,50,100]
v=5
data_cut1 = pd.cut(data,w,labels=False)
data_cut2=pd.cut(data,v,labels=False)
print(data_cut1)
print(data_cut2)
2.頻率離散化
按照頻率劃分到不同的區間中
import pandas as pd data = pd.Series([0,1,6,7,2,10,8,22,5,11,10]) data_cut3 = pd.qcut(data,[0,0.5,1],labels=['1','2']) print(data_cut3)
3.聚類離散
可以通過Kmeans進行離散劃分
data = np.random.rand(100,1) print(data) estimator = KMeans(n_clusters=3) #分為3個簇 estimator.fit(data) label_pred = estimator.labels_ #每個樣本所屬的簇 print(label_pred) centroids = estimator.cluster_centers_ #3箇中心點 print(centroids) inertia = estimator.inertia_ #評估簇是否合適 print(inertia)