Python TypeError:int()参数必须是字符串、类似字节的对象或不是';数据帧';

Python TypeError:int()参数必须是字符串、类似字节的对象或不是';数据帧';,python,pandas,tkinter,Python,Pandas,Tkinter,我无法将一个函数作为参数传递给另一个函数。这是我的代码: sNummer = sv[9:11] pd.to_numeric(sNummer) print(type(sNummer)) sNummer= df.replace(np.nan,0) sNummer= sNummer.replace(r'^\s*$', np.nan, regex=True)

我无法将一个函数作为参数传递给另一个函数。这是我的代码:

            sNummer = sv[9:11]
            pd.to_numeric(sNummer)
            print(type(sNummer))
            sNummer= df.replace(np.nan,0)
            sNummer= sNummer.replace(r'^\s*$', np.nan, regex=True)
            
            if int(sNummer) >= 0 and int(sNummer) <= 49:
                

                if gender.lower().strip() not in male_gender_options:
                    
                    #df= df.replace(r'^\s*$', np.nan, regex=True)
                    
                    df.at[index, 'sv_plausibility'] = (df.at[index,'sv_plausibility'].str.split()).apply(lambda x: float(sNummer))

                    if df.at[index, 'sv_plausibility'] == '':
                        df.at[index, 'sv_plausibility'] += 'Seriennummer müsste männlich sein aber passt nicht zu Geschlechtsspalte'
                    else:
                        df.at[index, 'sv_plausibility'] += ', Seriennummer müsste männlich sein aber passt nicht zu Geschlechtsspalte'

                else:
                    pass

            elif int(sNummer) >= 50 and int(sNummer) <= 99:

                if gender.lower().strip() not in female_gender_options:

                    if df.at[index, 'sv_plausibility'] == '':
                        df.at[index, 'sv_plausibility'] += 'Seriennummer müsste weiblich sein aber passt nicht zu Geschlechtsspalte'
                    else:
                        df.at[index, 'sv_plausibility'] += ', Seriennummer müsste weiblich sein aber passt nicht zu Geschlechtsspalte'

                else:
                    pass

            else:
                if df.at[index, 'sv_plausibility'] == '':
                    df.at[index, 'sv_plausibility'] += 'Seriennummer ungültig'
                else:
                    df.at[index, 'sv_plausibility'] += ', Seriennummer ungültig'
sNummer=sv[9:11]
pd.to_数字(斯努默)
打印(类型(斯努默))
sNummer=df.replace(np.nan,0)
sNummer=sNummer.replace(r'^\s*$',np.nan,regex=True)
如果int(sNummer)>=0且int(sNummer)=50且int(sNummer)
创建此变量时,为了使pd.to_数值工作,Pandas将sNummer转换为Dataframe,因此类型为Dataframe

可能创建的数据帧只有一个值,即您想要的数字,您可以打印整个sNummer以查看其值

我认为不需要传递sNummer,您可以将sNummer[0]传递给您的函数,并获得它需要的Int
            sNummer = sv[9:11]
            sNumber=pd.to_numeric(sNummer,errors='coerce')
            print(type(sNummer))
            
            if int(sNummer) >= 0 and int(sNummer) <= 49:
sNumber=pd.to_numeric(sNummer,errors='concurve') 打印(类型(斯努默))
如果int(sNummer)>=0和int(sNummer),请提供完整的回溯,什么是
sv
,什么是
print(type(sNummer))
返回。另外,当您已经将该变量分配给
sv[9:11]
df.replace(np.nan,0)时,为什么要将
sNummer
重新分配给
df.replace(np.nan,0)呢(…)
?是这样的是的,我知道,但我想直接将数据帧转换为浮点或int,但正如我们所看到的,它不起作用,我希望空的大小写为“N/A”,并且大小写不是空的,转换为float或stringpd。对于数字(sNummer,errors='concurve'),这行不起作用sNummer之后仍然是一个字符串
            sNummer = sv[9:11]
            sNumber=pd.to_numeric(sNummer,errors='coerce')
            print(type(sNummer))
            
            if int(sNummer) >= 0 and int(sNummer) <= 49: