Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/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_Pandas - Fatal编程技术网

Python 将函数应用于数据框中的所有列时出现意外行为

Python 将函数应用于数据框中的所有列时出现意外行为,python,pandas,Python,Pandas,我很难理解为什么对pandas的dataframe.apply方法的调用没有返回预期的结果。有人能解释一下为什么下面显示的第一个apply调用没有返回预期结果,而第二个调用返回预期结果吗 将熊猫作为pd导入 将numpy作为np导入 df=pd.DataFrame({ “x”:[1,2,np.nan], “y”:[“嗨”,“那里”,np.nan] }) 打印(df) #>xy #>01.0高 #>那里是12.0 #>2楠楠楠 打印(df.dtypes) #>x浮动64 #>y对象 #>数据类型:

我很难理解为什么对pandas的dataframe.apply方法的调用没有返回预期的结果。有人能解释一下为什么下面显示的第一个apply调用没有返回预期结果,而第二个调用返回预期结果吗

将熊猫作为pd导入
将numpy作为np导入
df=pd.DataFrame({
“x”:[1,2,np.nan],
“y”:[“嗨”,“那里”,np.nan]
})
打印(df)
#>xy
#>01.0高
#>那里是12.0
#>2楠楠楠
打印(df.dtypes)
#>x浮动64
#>y对象
#>数据类型:对象
#为什么这样的东西不能返回预期的结果(应该是
#是真是假):
打印(df.apply(lambda x:np.issubdtype(x,np.number)))
#>x错误
#>虚假的
#>数据类型:bool
#但类似的结果会返回预期结果(即中值插补)
#如果序列是数字,则使用,否则空值将替换为“缺失”):
def替换_空值:
is_numeric=np.issubdtype(s,np.number)
缺失值=s.中值(),如果为数值,否则为“缺失”
返回np.where(s.isnull(),缺少_值,s)
打印(df.应用(替换为空)
#>xy
#>01.0高
#>那里是12.0
#>2.1.5失踪

创建于2019-10-03年,由

创建,在我看来,它似乎已经崩溃了
pd.Series({k:np.issubdtype(v,np.number)在df.items()中表示k,v)
起作用,但是你的不起作用。嗯,是的,我不知道为什么这样的理解在apply不起作用的地方会起作用。
apply
做了很多检查和确保安全的事情。这是一个错误,我现在没有耐心去解开它。理解力正是它看起来的样子,因此并不令人惊讶。如果您想提交错误报告,请告诉我。否则,我会的。我会提交错误报告,谢谢。我看到更多的怪异,这可能会增加故事的情节。我打开了