这是一个初学者的问题,但是我在任何地方都找不到这个特定问题的答案。
我正在尝试使用matplotlib绘制两个值的图形,我有一个CSV表,并且正在使用Pandas对其进行操作。尝试绘制图形时,出现“关键错误,不在索引中”。
这是因为表中的某些值丢失了。所以我说
df = df.dropna()
我尝试绘制v_d和v_a有两个值。问题是v_a行中可能缺少某些“ N / A”或缺少值,但v_d行中却没有。
我不知道如何在缺少任何值的情况下完全删除一行,然后重新排列df以使没有孔或间隙。基本上是删除v_d或v_a中所有缺少数据的所有行,然后随机播放然后滑动其余行以占据其位置。
我相信这会阻止我得到关键错误。
编辑:有关我的问题的更多信息
这是我要绘制的内容
df.plot.scatter(x = df.v_d[df.V > 0.1], xlim=[-500,500] , y = df.v_a[df.V > 0.1] , ylim=[-500,500])
其中V是我定义的另一个量
当我尝试绘制它时,我得到了一个关键错误,而不是索引中的错误-我以为是因为我的v_d和v_a的某些值不适用
我真正想知道的是,在drop.na()的文档中找不到的内容是如何在行中的任何值为空时完全删除行。
答案 0 :(得分:0)
我知道我需要做什么
df = df[np.isfinite(df['v_d'])]
等...
发布此解决方案,以防其他人遇到此问题。