2017-06-17 14 views
2

データフレームdfがあります。列の一部は文字列で、一部は数値です。私はすべてを数値に変換しようとしています。だから私がしたいことは次のようなものです:Pandasは列の値をリストに置き換えます

col = df.ix[:,i] 
le = preprocessing.LabelEncoder() 
le.fit(col) 
newCol = le.transform(col) 
df.ix[:,i] = newCol 

しかし、これは動作しません。基本的に私の質問は、データフレームから列を削除し、列名のみがわからないときに削除した列と同じ名前の新しい列を作成する方法です。

答えて

1

これはあなたのためにそれを行う必要があります。[1]はインデックスがaxis = 1は変更されない、あるものは何でもすることができ

# Find the name of the column by index 
n = df.columns[1] 

# Drop that column 
df.drop(n, axis = 1, inplace = True) 

# Put whatever series you want in its place 
df[n] = newCol 

を...。

これは、カラムを削除してから再び追加するように求められたところであなたの質問に答えてくれます。しかし現実には、それをnewColに置き換えるだけでカラムを削除する必要はありません。

関連する問題