如何转换数据框中的所有浮点列,但第一列除外?
Posted
技术标签:
【中文标题】如何转换数据框中的所有浮点列,但第一列除外?【英文标题】:How to convert all float columns in dataframe but except the first column? 【发布时间】:2020-01-11 17:37:14 【问题描述】:我已经搜索过但没有找到我需要的东西。我有一个有 50 列的数据框。第一个是日期数据类型,其余的是浮点数据类型。
现在我只想将浮点列转换为整数,而不是日期列。 有人可以指导吗?
当我像 df_sub1=df_sub.iloc[:, 1:].apply(np.int64)
这样对 df 进行切片,然后将其与日期列连接起来时,它会使我的笔记本电脑崩溃,因此无法工作。希望有更好的办法。
【问题讨论】:
Convert floats to ints in Pandas?的可能重复 【参考方案1】:假设日期是您的第一列
import pandas as pd
cols = df.columns
df[cols[1:]] = df[cols[1:]].apply(pd.to_numeric, errors='coerce')
【讨论】:
【参考方案2】:你可以这样做。
new_df = df.drop(nameoffirstcolumn,1)
new_df.apply(np.int64)
然后你可以做类似的事情。
final_df = pd.concat([df1['nameoffirstcolumn'],new_df], axis=1)
【讨论】:
以上是关于如何转换数据框中的所有浮点列,但第一列除外?的主要内容,如果未能解决你的问题,请参考以下文章
将当前工作簿中的所有工作表复制到新工作簿,但第一张工作表除外
python pandas中如何将dataframe中的一列字符串类型转换为浮点类型?