怎么把dataframe里的字符串转化为float呢?

新手专区
标签: #<Tag:0x00007f6080d7d1c8>

(wujunjun) #1

我用了一个自定义模块,代码如下:

def bigquant_run(input_1):
    # 示例代码如下。在这里编写您的代码
    df = input_1.read_df()
    def dataprocess(data):
        for columns in('chgradio','dchratio','jmRate','zeRate'):
            data[columns] = data[columns].astype(np.float)
        return data
    df1=dataprocess(df)
    ds=DataSource.write_df(df1, key='data')
    return Outputs(data_1=ds)

结果报错,提示是:


求解答


(达达) #2

数据有空字符串没法转float 可以如下解决

data[columns] = data[columns].apply(lambda x:float(x) if x!='' else 0)