我有以下数据帧
time X Y X_t0 X_tp0 X_t1 X_tp1 X_t2 X_tp2
0 0.002876 0 10 0 NaN NaN NaN NaN NaN
1 0.002986 0 10 0 NaN 0 NaN NaN NaN
2 0.037367 1 10 1 1.000000 0 NaN 0 NaN
3 0.037374 2 10 2 0.500000 1 1.000000 0 NaN
4 0.037389 3 10 3 0.333333 2 0.500000 1 1.000000
5 0.037393 4 10 4 0.250000 3 0.333333 2 0.500000
....
1030308 9.962213 256 268 256 0.000000 256 0.003906 255 …
Run Code Online (Sandbox Code Playgroud) 在Pandas中,我可以使用df.dropna()
删除任何NaN
条目.Pandas中是否有类似的东西可以删除非有限(例如Inf
)条目?
在Python中将pandas DataFrame列彼此分开时,处理零分母的最佳方法是什么?例如:
df = pandas.DataFrame({"a": [1, 2, 0, 1, 5], "b": [0, 10, 20, 30, 50]})
df.a / df.b # yields error
Run Code Online (Sandbox Code Playgroud)
我想将分母为零的比率注册为NA(numpy.nan
).如何在熊猫中有效地完成这项工作?
转换为float64
在列级别上不起作用:
In [29]: df
Out[29]:
a b
0 1 0
1 2 10
2 0 20
3 1 30
4 5 50
In [30]: df["a"].astype("float64") / df["b"].astype("float64")
...
FloatingPointError: divide by zero encountered in divide
Run Code Online (Sandbox Code Playgroud)
我怎么能只为特定列而不是整个df做到这一点?