gpt4 book ai didi

python - 仅在列表的非无元素上运行函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:52:24 25 4
gpt4 key购买 nike

假设我有一个 Python 列表:a = [1,2,3,4,None]。假设我只想在不等于 None 的元素上运行 sklearn.preprocessing.scale。直接在列表上运行此函数会给出错误消息。

有没有办法做到这一点,而不必手动完成?我想要类似于 pandas 中的 .fillna() 方法的功能,您可以在其中在忽略非空元素的数据帧上运行一个函数,然后稍后替换它们。谢谢。

最佳答案

如果您正在使用 sklearn,您可能希望使用 numpy 数组而不是 Python 列表:

>>> x = np.array([1, 2, 3, 4, None], dtype=float)
>>> ix = ~np.isnan(x)
>>> x[ix] = sklearn.preprocessing.scale(x[ix])
>>> x
array([-1.34164079, -0.4472136 , 0.4472136 , 1.34164079, nan])

关于python - 仅在列表的非无元素上运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33746885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com