Python返回空的数据帧,即使存在匹配的值



我正试图通过.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";。谢谢大家。

最新更新