我有一个类似于以下文件的文本文件:
289222
image_name category_label
img/Sheer_Pleated-Front_Blouse/img_00000001.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000002.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000003.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000004.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000005.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000006.jpg 3
img/Sheer_Pleated-Front_Blouse/img_00000007.jpg 3
使用下面的代码行,我可以毫无问题地读取数据!
df = pd.read_csv(file_name,skiprows=1, sep='\s+')
但是将以下代码用于以下文本文件时,则会出现此错误
EmptyDataError: No columns to parse from file
289222
image_name x_1 y_1 x_2 y_2
img/Sheer_Pleated-Front_Blouse/img_00000001.jpg 072 079 232 273
img/Sheer_Pleated-Front_Blouse/img_00000002.jpg 067 059 155 161
img/Sheer_Pleated-Front_Blouse/img_00000003.jpg 065 065 156 200
img/Sheer_Pleated-Front_Blouse/img_00000004.jpg 051 062 167 182
img/Sheer_Pleated-Front_Blouse/img_00000005.jpg 046 088 166 262
img/Sheer_Pleated-Front_Blouse/img_00000006.jpg 047 067 211 241
任何帮助将不胜感激!
答案 0 :(得分:0)
我找到了解决方案,因为它可能对其他人有用。解决方法如下:
使用记事本或任何其他文本编辑器,我们可以简单地将长标签空间替换为一个标签空间。然后,文件将是这样的;
289222
image_name x_1 y_1 x_2 y_2
img/Sheer_Pleated-Front_Blouse/img_00000001.jpg 072 079 232 273
img/Sheer_Pleated-Front_Blouse/img_00000002.jpg 067 059 155 161
img/Sheer_Pleated-Front_Blouse/img_00000003.jpg 065 065 156 200
img/Sheer_Pleated-Front_Blouse/img_00000004.jpg 051 062 167 182
img/Sheer_Pleated-Front_Blouse/img_00000005.jpg 046 088 166 262
我们可以使用下面的代码行来读取它。
df = pd.read_csv(filename,
skiprows=1,
delim_whitespace=True)
希望这对其他人有用。 任何其他解决方案将不胜感激!