替换数据框中所有 nan 值的函数出错
Error in a function for Replacing all nan values in a dataframe
我正在尝试在 python 中创建一个函数来将任何形式的 NaN 替换为 NaN。
import pandas as pd
import numpy as np
data=pd.read_csv("diabetes.csv")
def proc_all_NaN(data):
nan_sym=["_","-","?","","na","n/a"]
for i in nan_sym:
data.replace(i,np.nan)
proc_all_NaN(data)
我希望我的函数的输出是一个带有 NaN 的数据帧,其中数据帧具有所有这些类型的 NaN:“_”、“-”、“?”、“”、"na"、"n/a".
我调用该函数时的输出只是我的数据,没有任何变化。
你能帮帮我吗,因为我没有遇到编码错误
您可以在使用pd.read_csv()
读取文件时定义空值的类型。根据 docs:
na_values : scalar, str, list-like, or dict, optional
Additional strings to recognize as NA/NaN. If dict passed, specific per-column NA values. By default the following values are interpreted as NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#QNAN’, ‘-NaN’, ‘-nan’, ‘1.#IND’, ‘1.#QNAN’, ‘N/A’, ‘NA’, ‘NULL’, ‘NaN’, ‘n/a’, ‘nan’, ‘null’.
你的情况,你可以试试:
data=pd.read_csv("diabetes.csv", na_values=["_","-","?","","na","n/a"])
我正在尝试在 python 中创建一个函数来将任何形式的 NaN 替换为 NaN。
import pandas as pd
import numpy as np
data=pd.read_csv("diabetes.csv")
def proc_all_NaN(data):
nan_sym=["_","-","?","","na","n/a"]
for i in nan_sym:
data.replace(i,np.nan)
proc_all_NaN(data)
我希望我的函数的输出是一个带有 NaN 的数据帧,其中数据帧具有所有这些类型的 NaN:“_”、“-”、“?”、“”、"na"、"n/a".
我调用该函数时的输出只是我的数据,没有任何变化。
你能帮帮我吗,因为我没有遇到编码错误
您可以在使用pd.read_csv()
读取文件时定义空值的类型。根据 docs:
na_values : scalar, str, list-like, or dict, optional Additional strings to recognize as NA/NaN. If dict passed, specific per-column NA values. By default the following values are interpreted as NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#QNAN’, ‘-NaN’, ‘-nan’, ‘1.#IND’, ‘1.#QNAN’, ‘N/A’, ‘NA’, ‘NULL’, ‘NaN’, ‘n/a’, ‘nan’, ‘null’.
你的情况,你可以试试:
data=pd.read_csv("diabetes.csv", na_values=["_","-","?","","na","n/a"])