私はあなたがdropna
が必要だと思うためNaN
の削除:
incoms=data['int_income'].dropna().unique().tolist()
print (incoms)
[75000.0, 50000.0, 0.0, 200000.0, 100000.0, 25000.0, 10000.0, 175000.0, 150000.0, 125000.0]
を、すべての値が唯一の整数である場合:
incoms=data['int_income'].dropna().astype(int).unique().tolist()
print (incoms)
[75000, 50000, 0, 200000, 100000, 25000, 10000, 175000, 150000, 125000]
それともnumpy.isnan
により、すべての非NaN値を選択することでNaN
秒を削除します。
a = data['int_income'].unique()
incoms= a[~np.isnan(a)].tolist()
print (incoms)
[75000.0, 50000.0, 0.0, 200000.0, 100000.0, 25000.0, 10000.0, 175000.0, 150000.0, 125000.0]
a = data['int_income'].unique()
incoms= a[~np.isnan(a)].astype(int).tolist()
print (incoms)
[75000, 50000, 0, 200000, 100000, 25000, 10000, 175000, 150000, 125000]
ピュアPythonのソリューション - slowier大きなDataFrame
場合:
incoms=[x for x in list(set(data['int_income'])) if pd.notnull(x)]
print (incoms)
[0.0, 100000.0, 200000.0, 25000.0, 125000.0, 50000.0, 10000.0, 150000.0, 175000.0, 75000.0]
incoms=[int(x) for x in list(set(data['int_income'])) if pd.notnull(x)]
print (incoms)
[0, 100000, 200000, 25000, 125000, 50000, 10000, 150000, 175000, 75000]
私はあなたが必要だと思う[ '.dropna'](https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna。 html) –
'pd.dropna()'を試してください – gobrewers14
私の(または別の)回答が参考になった場合、[承諾](http://meta.stackexchange.com/a/5235/295067)それを忘れないでください答えの横にチェックマーク( '✓')を入れて、グレーアウトしてから塗りつぶしにします。ありがとう。 – jezrael