Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如果一个条目为空,则删除行/列_Python_Pandas - Fatal编程技术网

Python 如果一个条目为空,则删除行/列

Python 如果一个条目为空,则删除行/列,python,pandas,Python,Pandas,我正在构建一个python脚本,它将定期运行,并在网站价格发生变化时提醒我。多亏了很多其他的帖子,我在我的新手方法上已经取得了相当大的进步,但我对最后的障碍有点意见 我查看了pandas文档,发现了一些本应允许我删除包含空单元格的行的东西,但我从未让它工作 pd.reset_option('max_rows') pd.reset_option('max_columns') pd.set_option('display.width', 800) url="https://support.apple

我正在构建一个python脚本,它将定期运行,并在网站价格发生变化时提醒我。多亏了很多其他的帖子,我在我的新手方法上已经取得了相当大的进步,但我对最后的障碍有点意见

我查看了pandas文档,发现了一些本应允许我删除包含空单元格的行的东西,但我从未让它工作

pd.reset_option('max_rows')
pd.reset_option('max_columns')
pd.set_option('display.width', 800)
url="https://support.apple.com/de-de/mac/repair/service"
df = pd.read_html(url)

with pd.option_context('display.max_rows', 0, 'display.max_columns', 3):

    df[0].replace(to_replace=r' €', value='', regex=True).replace(to_replace=r'^A.*', value='', regex=True).fillna(method='bfill').to_csv("mac0.csv", index = False)
目前我正在使用它,但我觉得如果我能让它不打印空行,它将允许我将同样的技术应用到其他需要从中提取数据的网站

当前作为输出获得的图像:

使用dropna:

此方法允许删除包含NaN元素的单元格。如果值不是NaN,而是空字符串、0s或其他值,则只需使用replace方法将NaN放入这些单元格中:

df = df.replace(yourvalue, NaN) #maybe should be numpy.nan? check your libraries to see the syntax of nan values


阅读文档以更好地理解此方法,因为它允许删除至少缺少一个元素的行,或者如果所有元素都缺少,或者仅当某个列的值丢失时才删除行。

我以前使用过dropna,但没有看到我要找的结果。当我将它添加到我的脚本''''df[0].replace(to_replace=r'€',value='',regex=True).replace(to_replace=r'^A.',value='',regex=True).fillna(method='bfill').dropna().to_csv(“mac0.csv”,index=False)''它不起作用。你能展示你的输出的屏幕截图吗?很抱歉,我现在无法使用Python访问计算机,我会尽快发布,但我不知道什么时候可以发布
df = df.replace(yourvalue, NaN) #maybe should be numpy.nan? check your libraries to see the syntax of nan values