使用pandas.read_csv读取数据时,是否可以避免使用空名称自动命名(例如在“未命名:13”中)?
csv文件中的名称行:
name_1;name_2;;name_4
read_csv生成的名称:
["name_1", "name_2", "Unnamed: 3", "name_4"]
所需名称:
["name_1", "name_2", "", "name_4"]
答案 0 :(得分:0)
您可以在加载CSV后重命名列:
def rename(col):
if col.startswith("Unnamed: "):
return ""
else:
return col
data.columns = [rename(col) for col in data.columns]
我不推荐它,你应该确保没有实际的列以"未命名:"开头,否则这应该适合你。
答案 1 :(得分:0)
阅读之后,您可以执行类似
的操作 df.columns = [x if not x.startswith('Unnamed') else i for i,x in enumerate(df.columns)]
这将使用与该列所对应的整数替换未命名的列。如果你真的希望它只是空白,你可以做到
df.columns = [x if not x.startswith('Unnamed') else "" for x in df.columns]