我正在导入一个Excel文件,该文件的行值中有很多缩进。这些缩进用于指定类别和子类别。当我将文件移植到熊猫时,创建了许多未命名的列,例如:
['百万级别','未命名:1','未命名:2','未命名:3', '' “全国卫生总支出”,“医院护理”, “医师和临床服务”,“其他专业服务”, “牙科服务”,“未命名:10” , “其他保健,住宅和个人护理”,“家庭保健”, “护理设施和持续护理退休社区”, “未命名:14”,“处方药”,“耐用医疗设备”, “其他非耐久医疗产品”,“未命名:18”,“未命名:19”, “州”,“联邦”,“健康保险净费用”, '政府公共卫生活动','未命名:24','研究', “结构”,“设备”]
我尝试了几件事:
type_of_prog_1.columns= type_of_prog_1.columns.str.replace('Unnamed: *',
'')
type_of_prog_1= type_of_prog_1.rename(columns=lambda x:
x.replace('Unnamed: *', 'Level: *'))
输出是这些列的编号分别为1、2、3等。编号的列使以后难以切片。
理想情况下,我希望根据“未命名”之后的数字将这些列命名为“级别1”或“级别2”。因为有24个未命名的列,所以我不想这样做-{“未命名1 “:“ 1级”,...}
答案 0 :(得分:1)
根据对问题的描述,可以致电Index.str.replace
:
df.columns = df.columns.str.replace('Unnamed:', 'Level')