我有一个脚本更新5-10列的数据,但有时启动csv将与结束csv相同,所以不要写相同的csv文件,我希望它什么也不做......
如何比较两个数据帧以检查它们是否相同?
csvdata = pandas.read_csv('csvfile.csv')
csvdata_old = csvdata
# ... do stuff with csvdata dataframe
if csvdata_old != csvdata:
csvdata.to_csv('csvfile.csv', index=False)
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
是否有一种惯用的方法来比较两个NumPy数组,这些数组会将NaN视为彼此相等(但不等于NaN以外的任何其他数据).
例如,我希望以下两个数组比较相等:
np.array([1.0, np.NAN, 2.0])
np.array([1.0, np.NAN, 2.0])
Run Code Online (Sandbox Code Playgroud)
和以下两个数组进行比较不相等:
np.array([1.0, np.NAN, 2.0])
np.array([1.0, 0.0, 2.0])
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种可以产生标量布尔结果的方法.
以下是这样做的:
np.all((a == b) | (np.isnan(a) & np.isnan(b)))
Run Code Online (Sandbox Code Playgroud)
但它很笨重,并创建所有这些中间阵列.
有没有一种方法更容易在眼睛上更好地利用记忆?
PS如果有帮助,已知阵列具有相同的形状和dtype.