【问题标题】:If I delete a row with pandas, it remains in Excel如果我用熊猫删除一行,它会保留在 Excel 中
【发布时间】: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: []

但是当我打开文件时,该行仍然存在。 我必须在函数之后保存文件吗?

Code Jupyter

【问题讨论】:

  • 是的,正在发生的事情是意料之中的。您已从数据框中删除了该行,但没有从 excel 中删除。所以,请使用df.to_excel将此数据框写入excel。这将用没有该行的新 Excel 覆盖您现有的 Excel。

标签: python excel pandas save


【解决方案1】:

是的。当您读取文件时,您会在计算机内存中创建该文件的副本。您所做的所有更改都在内存中,关闭程序后将被删除。如果您想将更改应用到文件,您应该使用 df.to_exceldf.to_csv 将数据框保存回文件(如果它是 csv 文件)

【讨论】:

    猜你喜欢
    • 2017-05-24
    • 2021-11-18
    • 1970-01-01
    • 2021-06-10
    • 2020-11-10
    • 2016-07-29
    • 2017-12-12
    • 1970-01-01
    • 2021-01-19
    相关资源
    最近更新 更多