2024-09-30 04:33:13 发布
网友
我使用df.columns获取数据帧的头并存储到列表中。A是dataframe的标头值列表
df.columns
A=list(df.columns)
但是列表中的每个元素都是string dtype,并且我的标题在标题示例下面也有int值:
A=['ABC','1345','Acv-1234']
但是我想让'1345'列为intdtype,而不是string, 像这样
'1345'
int
string
A=['ABC',1345,'Acv-1234']
有人能提出一个解决这个问题的方法吗
在将df.columns分配到列表a之前,我怀疑'1345'已经是df.columns中的一个字符串。为了分配列类型,必须搜索df的源以及列的分配方式
但是,您可以随时使用以下工具更改df.coluns:
df.columns=['ABC', 1345 ,'Acv-1234']
一种简单的方法是遍历列并检查列名(string type)是否只包含数字 (str.isdecimal())将其转换为int,否则将其保留为字符串
string type
str.isdecimal()
一行:
A = [int(x) if x.isdecimal() else x for x in df.columns ]
在将df.columns分配到列表a之前,我怀疑'1345'已经是df.columns中的一个字符串。为了分配列类型,必须搜索df的源以及列的分配方式
但是,您可以随时使用以下工具更改df.coluns:
一种简单的方法是遍历列并检查列名(
string type
)是否只包含数字 (str.isdecimal()
)将其转换为int
,否则将其保留为字符串一行:
相关问题 更多 >
编程相关推荐