我正试图通过.csv查找值匹配的行"2.Borgere>65〃;。在我的.csv中有五行,第一列与单词匹配,但是panda返回一个空的DataFarme。我试过在ISO 8859-1和Latin-1中加载.csv,但结果相同。
这是我的代码:
#LOAD NØGLETAL IN PANDAS
df_noegletal = pd.read_csv("zipfiler/Vaccine_maalgrupper_DB/Noegletal_vacc_daekning.csv", encoding="Latin-1")
#PRINT ROWS MATCHING VALUE
print(df_noegletal[df_noegletal.eq("2. Borgere > 65").any(1)])
Pandas返回以下内容:
Empty DataFrame
Columns: [Målgruppe, Ansættelsessted, Bopælsregion, Population, Antal førstevaccinerede, Antal færdigvaccinerede, Førstegangs vaccinerede dækning (%), Færdigvaccinerede dækning (%)]
Index: []
Process finished with exit code 0
即使在我的.csv中存在与";2.Borgere>65〃;。
这是我的.csv 的屏幕截图
尝试使用列名访问它。
很难使用挪威(?(变量:(
例如:
df_noegletal = df_noegletal[df_noegletal['Malgruppe'].str.strip == '2. Borgere > 65']
您的代码将整个DataFrame与一个字符串进行比较,这显然不是真的。
df_noegletal.eq("2. Borgere > 65")
语法应如下所示:
df_noegletal[df_noegletal['Målgruppe' == "2. Borgere > 65"]]
问题已经解决。没有一个单元格确实与该值匹配。问题是我在Excel中打开.csv时使用了逗号作为分隔符,将原本应该是一列的内容一分为二。单元格的实际值为"0";2.Borgere>65,praktisk hjælp og personlig pleje";。谢谢大家。