我的Python代码有一些问题。在使用DataFrames时,我得到了一个UserWarning,我不太清楚如何防止它。
for index in matplatsID:
mask = (kameraData["Tid"].dt.hour >= timme) & (kameraData["Tid"].dt.hour < timme+1)
matplatsSummaHastigheter += kameraData[mask][kameraData["MätplatsID"] == index]["Hastighet"].sum()
matplatsAntalFordon += kameraData[mask][kameraData["MätplatsID"] == index]["Hastighet"].count()
UserWarning: Boolean Series key will be reindexed to match DataFrame index.
matplatsSummaHastigheter += kameraData[mask][kameraData["MätplatsID"] == index]["Hastighet"].sum()
UserWarning: Boolean Series key will be reindexed to match DataFrame index.
matplatsAntalFordon += kameraData[mask][kameraData["MätplatsID"] == index]["Hastighet"].count()
它产生了这些警告,而我对如何避免它们感到震惊,对该做什么有什么想法吗?
发布于 2022-05-20 09:33:04
您需要对原始DataFrame进行测试的所有三个条件:
for index in matplatsID:
mask = (kameraData["Tid"].dt.hour >= timme) &
(kameraData["Tid"].dt.hour < timme+1) &
(kameraData["MätplatsID"] == index)
matplatsSummaHastigheter += kameraData.loc[mask, "Hastighet"].sum()
matplatsAntalFordon += kameraData.loc[mask, "Hastighet"].count()
在您的解决方案中,首先通过mask
进行筛选,然后再通过kameraData["MätplatsID"] == index
进行筛选,因此会引起错误,因为筛选出了DataFrame。
https://stackoverflow.com/questions/72316585
复制相似问题