Kaggle titanik afet sorununu çözmeye çalışıyorum, özellikle eksik değerleri girmek için mod/ortalama/medyan kullanarak. İşte benim verilere bir zirve Ben girişti 'Sütun ve tip 'Nesne' modunu almaya çalışıyorumPython 3. +, Scipy Stats Mode işlevi, Type Error değerini vermez: str()> float()
Parch Ticket Fare Cabin Embarked
0 0 A/5 21171 7.2500 NaN S
1 0 PC 17599 71.2833 C85 C
2 0 STON/O2. 3101282 7.9250 NaN S
3 0 113803 53.1000 C123 S
4 0 373450 8.0500 NaN S
kümesidir. Python3 kullanıyorum. İşte kod parçacığı şudur: df.Embarked
yılında türlerini karışık olmasıdır
<ipython-input-39-1b4237d65022> in clean(df)
18
19 # Cleaning Embarked column
---> 20 modeEmbarked = mode(df.Embarked)
21 # print(mode(df.Embarked))
22 # le_embarked = preprocessing.LabelEncoder()
/home/singhaniya/anaconda3/lib/python3.5/site-packages/scipy/stats/stats.py in mode(a, axis)
635 return np.array([]), np.array([])
636
--> 637 scores = np.unique(np.ravel(a)) # get ALL unique values
638 testshape = list(a.shape)
639 testshape[axis] = 1
/home/singhaniya/anaconda3/lib/python3.5/site-packages/numpy/lib/arraysetops.py in unique(ar, return_index, return_inverse, return_counts)
196 aux = ar[perm]
197 else:
--> 198 ar.sort()
199 aux = ar
200 flag = np.concatenate(([True], aux[1:] != aux[:-1]))
TypeError: unorderable types: str() > float()
evet! NAN değerleri var, ancak çalıştığım eğitici ekstra bir şey yapmıyor ve aynı sonucu veriyor! Bununla birlikte, dropna() ile çalıştırırsam aynı şeyi yapabilirim() – aks
@AnkitSinghaniya Öğreticiniz ne derse desin, "scipy.stats.mode()", karışık türde dizilerin modlarını, en azından scipy'nin yüklü sürümünü hesaplayamıyor bilgisayarımda. Mod() 'nın pandalar sürümü bunu yapabilir, benim düzenlememi görebilir. – Goyo
karışık değerler hakkında işaret etmekte haklısınız. Sanırım NAN değerleri problemdi. – aks