0
私は多くの値(モダリティ)を含む多くの「オブジェクト」列を持つpandas DataFrameを持っています。次に、私はの10個の最も頻繁なモダリティを各列に対してだけ残し、残りは 'Oth'で置き換えたいと考えています。例えばパンダ:複数の列の値を一意の値で置き換えます。
、私は列の4つの異なる値が含まれている「obj_col1」を持つ場合:
obj_col1
'A'
'A'
'B'
'C'
'B'
'D'
をし、私が最も頻繁に、ここでは「A」と「B」の2を維持し、交換したいです'0番目' によって残り:
obj_col2
'A'
'A'
'B'
'Oth'
'B'
'Oth'
つのオブジェクト列(カテゴリ変数)のためのコードの一部である:
# sorted list of modalities of 'categ_var'
list_freq_modal = df['categ_var'].value_counts().index.tolist()
# replace all the modalities except the first 10 by 'Oth'
df['categ_var'].replace(list_freq_modal[10:],'Oth', inplace=True)
しかし、私は肝炎エラー: 'NoneType'オブジェクトに 'any'属性がありません
もっと最適な方法で実装してもらえますか?
サンプル・データください – Dark
それはそうですいくつかの 'None'または' NaN'値があります – jezrael