2024-10-03 21:36:21 发布
网友
我有一个数据帧df,其中一些列是字符串,一些是数字。我正试着把它们全部转换成数字。所以我想这样做:
df
col = df.ix[:,i] le = preprocessing.LabelEncoder() le.fit(col) newCol = le.transform(col) df.ix[:,i] = newCol
但这不管用。基本上,我的问题是如何从数据框中删除一列,然后创建一个与我删除的列同名的新列(当我不知道列名时,只知道列索引)?
newcol = [..,..,.....] df['colname'] = newcol
这将保持colname的完整性,同时将其内容替换为newcol。
这应该对你有用:
# 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
…其中[1]可以是任何索引,axis = 1不应更改。
[1]
axis = 1
这从字面上回答了你的问题,你要求删除一个列,然后再添加一个。但实际情况是,只要用newCol替换列,就不需要删除它。
newCol
这将保持colname的完整性,同时将其内容替换为newcol。
这应该对你有用:
…其中
[1]
可以是任何索引,axis = 1
不应更改。这从字面上回答了你的问题,你要求删除一个列,然后再添加一个。但实际情况是,只要用
newCol
替换列,就不需要删除它。相关问题 更多 >
编程相关推荐