Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.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 熊猫-南';未被udf所取代_Python_Pandas - Fatal编程技术网

Python 熊猫-南';未被udf所取代

Python 熊猫-南';未被udf所取代,python,pandas,Python,Pandas,我有一个数据框,其中nan在多个列中出现,并且正在通过这样一个函数来实现它 def Change_Data_Type_DataFrame (AnyPandasDataFrame): for i in range(0, AnyPandasDataFrame.shape[1]): Required_Column_Name = (AnyPandasDataFrame.columns[i]) AnyPandasDataFrame[Required_Co

我有一个数据框,其中nan在多个列中出现,并且正在通过这样一个函数来实现它

def Change_Data_Type_DataFrame (AnyPandasDataFrame):      
    for i in range(0, AnyPandasDataFrame.shape[1]):
        Required_Column_Name = (AnyPandasDataFrame.columns[i])
        AnyPandasDataFrame[Required_Column_Name] = AnyPandasDataFrame[Required_Column_Name].astype(str)
        print(LookUp_df)
        AnyPandasDataFrame[Required_Column_Name] = AnyPandasDataFrame[Required_Column_Name].replace(np.nan,"FILLINGTHENAS")
        print(LookUp_df)
        AnyPandasDataFrame[Required_Column_Name] = AnyPandasDataFrame[Required_Column_Name].astype(str).replace('\.0', '', regex=True)
    return (AnyPandasDataFrame)
我不确定我的功能哪里出了问题

  • 我所做的只是将数据类型转换为字符串
  • 然后将np.nan替换为“Some string”
  • 然后将“.0”替换为“”

  • 首先,您可以通过一个步骤转换
    数据帧
    的所有列:

     df = df.astype(str)
    
    然后,您可以使用
    fillna
    方法替换
    DataFrame
    中的
    NaN

     df = df.fillna("FILLINGTHENAS")
    
    您的函数将如下所示:

    def change_data_type(df):
        df = df.astype(str)
        df = df.fillna("FILLINGTHENAS")
        for column in df.columns:
            df[column] = df[column].replace('\.0', '', regex=True)
        return df
    

    不确定正则表达式部分,我没有任何数据来尝试你正在做的事情。

    你可以检查数据帧的
    fillna
    方法。此外,在python中,我们不使用CamelCase,而是使用snake\u case:
    AnyPandasDataFrame
    =>
    任何数据帧
    df
    在那种情况下更好)看起来像,当我把它换成snake_箱时,它正在工作。