- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有以下代码,它只具有一个函数,该函数接受输入数据帧并输出一个按标签
对它们进行分组并对它们求和的版本。
import pandas as pd
import random
import numpy as np
random.seed = 10
input_data = np.array(
[
[random.randint(0,9) for x in range(4)]+['g'],
[random.randint(0,9) for x in range(4)]+['g'],
[random.randint(0,9) for x in range(4)]+['a'],
[random.randint(0,9) for x in range(4)]+['b'],
[random.randint(0,9) for x in range(4)]+['b']
]
)
input_df = pd.DataFrame(data=input_data, columns=['A','B', 'C', 'D', 'label'])
def group_and_sum(input_df):
final_df = pd.DataFrame()
for gr,subdf in input_df.groupby('label'):
new_df = pd.DataFrame()
new_df['label'] = [gr]
columns = [x for x in input_df.columns if x!='label']
subdf[columns] = subdf[columns].values.astype(float)
for col in columns:
new_df[col] = [sum(subdf[col].values)]
new_df['sum'] = sum([new_df[x].values for x in columns])
final_df = pd.concat([final_df, new_df])
final_df.index = np.array(range(len(final_df)))
return final_df
final_df = group_and_sum(input_df)
抛出以下警告:
Warning (from warnings module):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas-0.17.0-py2.7-macosx-10.6-intel.egg/pandas/core/frame.py", line 2269
self.ix._setitem_with_indexer((slice(None), indexer), value)
SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame
See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
有两件事:
1) 当我查看警告 here 时这似乎与我无关。正如警告中提供的链接所示,我没有执行诸如链式索引之类的操作。
2)当我尝试在函数之外重现错误时,由于某种原因我无法重现:
input_df[['A']]=input_df[['A']].astype(float)
input_df[['A','B']]=input_df[['A','B']].astype(float)
...它们都运行得很好。
还有其他方法可以重现此警告吗?它是否适用于此?谢谢。
最佳答案
我相信该警告是由于您的行 subdf[columns] = subdf[columns].values.astype(float)
引起的。您从 groupby 中获得了 subdf,因此 subdf 是对原始 DataFrame 某些行的引用。在此切片上设置值会导致警告。换句话说,就好像您进行了链式索引:
input_df[rows_that_are_part_of_this_group][columns] = ...
关于python - pandas 试图告诉我什么警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34782405/
我是 C++ 的新手,我在使用这段代码时遇到了问题: string output_date(int day, int month, int year){ string date; if
所以我这样做了 tar cvzf test.zip FP 为了创建目录 FP 的 zip 但是,它会列出 zip 中的目录 FP/ FP/php/ FP/php/pdf/ FP/php/docs/ F
我正在尝试在 Swift、Xcode 7.3(所以是 Swift 2.2)中创建一个通用类,但我似乎无法让它通过编译器: protocol Struct1Protocol { } struct Str
我的测试用例是这样的: class FooTest extends PHPUnit_Framework_TestCase { /** @covers MyClass::bar */ f
我正在尝试将brew install wine作为使electron-builder工作的一步。但是我所能得到的只是以下响应: ==> Installing dependencies for wine
我这样做: string[,] string1 = {{"one", "0"},{"Two", "5"},{"Three","1"}}; int b = 0; for(int i = 0; i <=
我正在尝试使用 SetWindowsHookEx 键盘 Hook Notepad.exe。 如您所见,工作线程正在将其 ASCII 代码(即 wParam)发送到指定的服务器。 UINT WINAPI
我正在尝试将 ListView 实现到我的 Fragment 中,但无论我尝试什么,我都会得到一个 NullPointerException。我检查对象是否为 null 并记录是否为 null,看起来
我尝试在一行中对齐两个 div。使用 float left 属性,一切顺利。但是当我在 div 中使用图像时,它开始产生问题。 所以这是我的示例代码:- Some headi
我目前正在使用此代码来获取图像的灰度图像表示并以 (512, 370, 1) 的格式表示它大批。 img_instance = cv2.imread(df.iloc[i][x_col]) / 255.
总结 我正在创建一个简单的应用程序,它允许用户选择一个包含顶级窗口的进程。用户首先键入 native DLL(而非托管 DLL)的路径。然后用户键入将在 Hook 过程中调用的方法的名称。该方法不得返
我是一名优秀的程序员,十分优秀!