当前位置: 首页 > 知识库问答 >
问题:

在没有警告的情况下缩放后替换整个熊猫数据帧

花俊雄
2023-03-14

我已经根据这个遮阳篷尝试过这个

x = df[feature_collums]
y = df[[label_column]][label_column]

from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
x[:] =  scaler.fit_transform(x, y)
print('Scaled the data to the 0-1 interval')

但这给了我警告:

/tmp/ipykernel_560/2431060981.py:14: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy

我很难将此代码转换为使用 .loc 属性。有人可以告诉我如何将此代码转换为使用.loc并摆脱警告吗?

谢谢大家!

共有1个答案

郭洋
2023-03-14

好的,我发现你可以用这个:

data_scaled = pd.DataFrame(scaled_features, index=df.index, columns=df.columns)

基本上只是创建一个具有相同索引和列的新数据帧,这就摆脱了警告。

 类似资料:
  • 当我在spyder中使用pandas绘图数据时。它将始终显示一条警告消息: C:\ProgramData\Anaconda3\lib\site packages\pandas\core\index。py:494:SettingWithCopyWarning:试图在数据帧切片的副本上设置值。尝试使用。loc[row\u indexer,col\u indexer]=改为value。请参阅文档中的注意

  • 我正在遵循Oracle的教程在JavaFX中创建TableView。在这个截图中,我复制并粘贴了代码,发现了几个错误,教程中没有提到这些错误。 TableView上的警告显示: TableView是原始类型。对泛型类型TableView的引用 表列上的警告说: 表列是一个原始类型。对泛型类型TableCol列的引用 addAll方法上的警告是: 类型安全:方法addAll(Object…)属于原始

  • 这是一个与这个问题非常相似的问题,但有一个关键的区别:我选择的数据我想改变的不是它的索引,而是一些标准。 如果我应用的条件返回一行,我希望能够以一种简单的方式设置该行中某一列的值,但是我的第一次尝试不起作用: 因此,与其将2009年周日的香蕉销量设定为100,还不如什么都不发生!做这件事最好的方法是什么?理想情况下,解决方案应该使用行号,因为您通常事先不知道!

  • 问题内容: 我想从我的Node.js应用程序中的Mongoose设置中检索一些数据。我注意到,无论我写什么作为字段选择,我总是会得到该字段。有没有一种方法不可以获取它?我现在是这样的: 并记录下包含该字段的结果。 问题答案: 必须明确排除。例如,

  • 我正在尝试设置一个动态,从本地目录读取文件。因此,我创建了以下可参数化类: 参数化流在的帮助下注册,如下所示: 启动应用程序后,我得到以下警告: 如果我理解正确的话,负责创建集成bean(从而设置beanFactory)。但是为什么我会收到这个错误信息呢?

  • 问题内容: 鉴于熊猫0.20.0的更新和弃用,我想知道用其余的和获得相同结果的最有效方法是什么。我只是回答了这个问题,但是第二种选择(不使用)似乎效率低下且冗长。 片段: 同时使用条件和索引位置过滤时,这是正确的方法吗? 问题答案: 通过用位置对特定索引进行切片来获得所需的索引值,您可以留在一个单一的世界中。