gpt4 book ai didi

python - 使用 SimpleImputer 后 Dataframe 变成 numpy 数组。我希望它返回一个 dataframe

转载 作者:行者123 更新时间:2023-12-01 06:24:59 31 4
gpt4 key购买 nike

在下面的笔记本中,使用 SimpleImputer 插入缺失值后,数据帧被转换为 numpy 数组,如何确保它的类型保持为数据帧本身?

import pandas as pd
df1 = pd.read_excel("dummy.xlsx")

DataFrame without imputing the values..

imp = SimpleImputer(strategy='median')
df2=imp.fit_transform(df2)
df2

enter image description here

最佳答案

sklearn.impute.SimpleImputer.fit_transform 的文档明确表示它将返回一个 numpy.array:

Returns: X_newnumpy: array of shape [n_samples, n_features_new]

Transformed array.

所以你不能“确保它的类型保持为数据帧”。但是,您当然可以在 pandas.DataFrame() 构造函数中提供生成的 numpy.array

from sklearn.impute import SimpleImputer
import pandas as pd
import numpy as np

# Mocking your data
df = pd.DataFrame(np.random.rand(10,3))
df[df > 0.9] = np.nan

imp = SimpleImputer(strategy='median')

# Feeding resulting numpy array from fit_transform directly to new df2
df2 = pd.DataFrame(imp.fit_transform(df))

就是这样

>>> type(df2)
pandas.core.frame.DataFrame

关于python - 使用 SimpleImputer 后 Dataframe 变成 numpy 数组。我希望它返回一个 dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60207512/

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