Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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_String - Fatal编程技术网

如何在python中验证变量是否为空

如何在python中验证变量是否为空,python,string,Python,String,我正在处理.csv格式的数据,希望将所有空单元格设置为空字符串的值 我面临的问题是,这些文件已经在不同的环境中为几个人处理过,因此这些单元格上有各种不同的垃圾值,例如: ' ' 'NaN' 'nan' '\n' ' ' 等等 我正在寻找一种标准方法来识别所有这些类型的“垃圾值”。您可以使用该函数来消除空白值,如'和'\n',但不会处理'NaN'或'NaN'等值。实际上没有一种标准的方法来处理这些问题,因此除了使用isspace之外,我还将创建一个黑名单,例如: blacklist=['Na

我正在处理.csv格式的数据,希望将所有空单元格设置为空字符串的值

我面临的问题是,这些文件已经在不同的环境中为几个人处理过,因此这些单元格上有各种不同的垃圾值,例如:

' '
'NaN'
'nan'
'\n'
'   '
等等

我正在寻找一种标准方法来识别所有这些类型的“垃圾值”。

您可以使用该函数来消除空白值,如
'
'\n'
,但不会处理
'NaN'
'NaN'
等值。实际上没有一种标准的方法来处理这些问题,因此除了使用
isspace
之外,我还将创建一个黑名单,例如:

blacklist=['NaN','NaN']#根据需要添加更多内容

然后使用
isspace()
加上您的
黑名单
来过滤掉不需要的值。

您可以使用该函数来消除像
'
'\n'
这样的空白值,但不会处理像
'NaN'
'NaN'
这样的值。实际上没有一种标准的方法来处理这些问题,因此除了使用
isspace
之外,我还将创建一个黑名单,例如:

blacklist=['NaN','NaN']#根据需要添加更多内容


然后使用
isspace()
加上您的
黑名单来过滤掉不需要的值。

您可以将csv读入Pandas数据框,然后使用
DataFrame.fillna()
您可以将csv读入Pandas数据框,然后使用
DataFrame.fillna()

使用.strip()删除空白,然后检查该值是否为要忽略的值:

if value.strip() in ['', 'NaN', 'nan']:
    # ignore this value
或者,使其不区分大小写:

if value.strip().lower() in ['', 'nan']:
    # ignore this value
使用.strip()删除空白,然后检查该值是否为要忽略的值:

if value.strip() in ['', 'NaN', 'nan']:
    # ignore this value
或者,使其不区分大小写:

if value.strip().lower() in ['', 'nan']:
    # ignore this value
我认为这是解决你问题的一个好办法

以下是一些示例代码:

import pandas as pd
# sample data
dic = {'a':['NAN', "", "NaN"], 'b':["", "nan", '\n'], 'c':[1,'2','3']}
df = pd.DataFrame(dic)

replace_list = ['NaN', '', 'nan', '\n']
df_clean = df.replace(replace_list, '')
df_clean
您可以将csv数据导入Pandas并执行相同的操作

希望能有帮助

我认为这是解决你问题的一个好办法

以下是一些示例代码:

import pandas as pd
# sample data
dic = {'a':['NAN', "", "NaN"], 'b':["", "nan", '\n'], 'c':[1,'2','3']}
df = pd.DataFrame(dic)

replace_list = ['NaN', '', 'nan', '\n']
df_clean = df.replace(replace_list, '')
df_clean
您可以将csv数据导入Pandas并执行相同的操作


希望能有帮助

如果您的StringVar.strip():
?它不适用于“NaN”
如果您的StringVar.strip():
?它不适用于“NaN”