【发布时间】:2020-05-10 16:21:41
【问题描述】:
如果我用 pandas 删除一行,它会保留在 Excel 中
def sort_wickelfalzrohr(d):
# Filter settings
filt_with_isolation = (df_read['KZ'] == 'R-R') & (df_read['D'] == d) & (df_read['IsoOf'].isna() == False)
filt_without_isolation = (df_read['KZ'] == 'R-R') & (df_read['D'] == d) & (df_read['IsoOf'].isna() == True)
# **delete sortet Elements in df_read**
df_read.drop(index=df_read[filt_with_isolation].index, inplace=True)
df_read.drop(index=df_read[filt_without_isolation].index, inplace=True)
#print(df_read[filt_with_isolation])
#print(df_read[filt_without_isolation])
sort_wickelfalzrohr(160)
输出:
C:\Users\tfern\anaconda3\lib\site-packages\ipykernel_launcher.py:36: UserWarning: Boolean Series key will be reindexed to match DataFrame index.
(6030.0, 41050.0)
如果我在 pandas 中搜索删除行(在函数 sort_Wickelfalzrohr 中删除后:
Output
Empty DataFrame
Columns: [Nr, TsNr, ....
Index: []
但是当我打开文件时,该行仍然存在。 我必须在函数之后保存文件吗?
【问题讨论】:
-
是的,正在发生的事情是意料之中的。您已从数据框中删除了该行,但没有从 excel 中删除。所以,请使用
df.to_excel将此数据框写入excel。这将用没有该行的新 Excel 覆盖您现有的 Excel。