问题标签 [pandas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8288 浏览

python - 从 MultiIndex 中选择特定级别的数据

我有以下带有 MultiIndex(Z,A) 的 Pandas 数据框:

问题:如何选择 A=203 的所有项目?我试过df[:,'A'] 了,但它不起作用。然后我在在线文档中找到了这个,所以我尝试了:
df.xs(203,level='A')
但我得到:
TypeError: xs() got an unexpected keyword argument 'level'”我在安装的 doc( )
中也没有看到这个参数: “参数 ---------- key : object Some label contains in索引,或部分在 MultiIndex 轴:int,默认 0 轴以在复制时检索横截面:布尔值,默认 True 是否复制数据“ 注意:我有开发版本。df.xs?

编辑:我找到了这个线程。他们推荐类似的东西:

我仍然想知道带有 level 参数的 df.xs 发生了什么,或者在当前版本中推荐的方式是什么。

0 投票
1 回答
27271 浏览

python - 自定义 matplotlib 绘图:象棋棋盘一样的带有彩色单元格的表格

当我学习 python 和这个有趣的绘图库时,我开始使用 matplotlib 渲染绘图。对于我正在处理的问题,我需要自定义绘图的帮助。可能已经为此提供了内置功能。

问题:我正在尝试将表格(矩形)绘制为具有 96 个单独单元格(8 行 X 12 列)的图。用特定颜色为每个替代单元格着色(如棋盘:我将使用其他颜色组合而不是黑色/白色),并从 pandas 数据框或 python 字典中为每个单元格插入值。在侧面显示列和行标签。

样本数据: http: //pastebin.com/N4A7gWuH

我希望情节看起来像这样,用 numpy/pandas ds 替换单元格中的值。

示例图: http: //picpaste.com/sample-E0DZaoXk.png

感谢您的意见。

PS:确实在 mathplotlib 的邮件列表上发布了相同的内容

0 投票
1 回答
1563 浏览

python - 从 pandas DataFrame 返回最后一个有效(非空)值

假设我dataframe看起来像:

我可以按“b”创建一个组。有没有一种快速的方法来获取每个组的“a”中的最后一个非 NA 值?在这种情况下,A 组为 3,B 组为 -9。

(在这种情况下,序列“a”按给定排序,但可能并非如此。可能还有另一列“c”,根据它定义“最后一个”。)

我通过查看 grouped.groups 字典编写了自己的循环代码。但显然,鉴于我庞大的数据集,这非常低效。我认为这可以非常简单地完成——也许我对熊猫太陌生了:-)

0 投票
13 回答
358642 浏览

python - 在 pandas DataFrame 中查找列的值最大的行

如何找到特定列的值最大的行?

df.max()会给我每列的最大值,我不知道如何获取相应的行。

0 投票
1 回答
3458 浏览

python - pip install numpy pandas 失败?

Pandas 依赖于 numpy,安装 pandas 依赖项存在一个开放构建问题。无论如何,在下面的示例中为什么 pip 退出 numpy 有什么想法吗?如果使用需求文件也会发生。

然后在 numpy setup 的中间,panda setup 被触发。

....在测试 numpy 时

0 投票
1 回答
2546 浏览

python - pandas 将数据聚合到 numpy 数组:数据结构转换

我使用熊猫数据框聚合了数据。下面是显示的一些实际数据以及我如何汇总它。

fdf.groupby(['row',col'])['percent'].sum()

http://pastebin.com/R8XWpgtU

我想做的是创建一个二维numpy数组(行=行,列=列)。有什么巧妙的方法可以做到这一点吗?

我做类似事情的另一种方法是创建一个数据透视表

pivot_table(fdf,values='percent',rows='row',cols='col', aggfunc=np.sum)

在这种情况下,我想将此数据透视表转换为 2d numpy 数组。有没有办法让我索引到这个表的每个单元格。如果是这样,那么我可能会对桌子本身没问题。

0 投票
3 回答
2915 浏览

python - 使用 numpy 读取 csv 文件的主要内存问题

我从 Kaggle 获取了 KDD track1 数据集,并决定在我的 16GB 高内存 EC2 实例上将一个约 2.5GB 的 3 列 CSV 文件加载到内存中:

python 会话占用了我所有的内存(100%),然后被杀死了。

然后我使用 R(通过 read.table)读取了同一个文件,它使用了不到 5GB 的内存,在我调用垃圾收集器后它崩溃到不到 2GB。

我的问题是为什么这会在 numpy 下失败,以及将文件读入内存的正确方法是什么。是的,我可以使用生成器来避免问题,但这不是目标。

0 投票
10 回答
855120 浏览

python - 将 Pandas GroupBy 输出从 Series 转换为 DataFrame

我从这样的输入数据开始

打印时显示如下:

分组很简单:

和打印产生一个GroupBy对象:

但我最终想要的是另一个包含 GroupBy 对象中所有行的 DataFrame 对象。换句话说,我想得到以下结果:

我不太明白如何在 pandas 文档中完成此操作。欢迎任何提示。

0 投票
2 回答
29228 浏览

python - 已安装的 Python 模块 - Python 找不到它们

这是一个初学者python安装问题。这是我第一次尝试安装和调用包。我已经pip安装了,我尝试安装两个模块 -numpypandas.

在终端中,我运行了以下命令:

两个命令都返回成功消息。这是pandas成功消息(这是我安装的第二个软件包,并且仍在我的终端历史记录中):

pip安装后返回类似消息numpy

现在,当我启动python并尝试调用它时:

我收到此错误消息:

我尝试时也一样numpy

谁能告诉我我做错了什么?

0 投票
2 回答
150 浏览

python - 在循环中动态添加方法时的范围陷阱

我有一个用于分析我的锻炼数据的 API(我从 runkeeper的网站上抓取)。

我的主类是 a 的子类pandas.DataFrame,它基本上是表格数据的容器。它支持按列名索引,返回列值的数组。

我想根据数据中存在的“健身活动”类型添加一些便利属性。因此,例如,我想添加一个属性“正在运行”:

这将返回DataFrame在“类型”列中具有“正在运行”的所有行。

我尝试对数据中存在的所有类型动态地执行此操作。这是我天真地做的事情:

结果是所有这些属性最终都返回了相同类型活动(“步行”)的数据表。

发生的事情是,当访问属性时,会调用 lambda,它们会在为名称“type”定义的范围内查找。他们发现它绑定到字符串 'walking',因为那是 for 循环的最后一次迭代。for 循环的每次迭代都没有自己的命名空间,因此所有 lambda 只看到最后一次迭代,而不是 'type' 实际定义时的值。

任何人都可以解决这个问题吗?我可以想到两个,但它们似乎并不特别理想:

  1. 定义__getattr__以检查属性是否为活动类型并返回适当的行。

  2. 使用递归函数调用而不是 for 循环,以便每一级递归都有自己的命名空间。

这两个对我的口味来说都太聪明了,而且pandas.DataFrame已经有了一个__getattr__,如果我也做了一个,我必须小心翼翼地与之互动。并且递归会起作用,但感觉非常错误,因为类型集没有任何内在的树状结构。它是平坦的,在代码中应该看起来平坦!