问题标签 [multi-index]
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.
python - 根据列标签重塑熊猫中的数据框
在熊猫中重塑以下数据框的最佳方法是什么?此 DataFramedf
具有x,y
每个样本的值(s1
在s2
本例中),如下所示:
s1_x
并且s1_y
是样本 1 的 x/y 值,s2_x, s2_y
是样本 2 的样本值,等等。如何将其重塑为仅包含x
,y
列但包含一个附加列的 DataFrame,该列sample
表示 DataFrame 中的每一行是否来自s1
还是s2
?例如
这对于稍后使用 Rpy2 绘制东西很有用,因为许多 R 绘图功能可以利用这个分组变量,所以这就是我重塑数据框的动机。
我认为 Chang She 给出的答案并不能转化为具有唯一索引的数据框,例如:
转换有效,但在此过程中列"names"
丢失了。如何将"names"
列保留在 df 中,同时仍对其名称中的列进行熔化转换_
?该"names"
列只是为数据框中的每一行分配一个唯一的名称。例如,这里是数字,但在我的数据中它们是字符串标识符。
谢谢。
python - 在 pandas DataFrame 上调用 dropna() 后是否应该更新多索引级别?
在多索引数据帧上调用 dropna 后,索引中的级别元数据似乎没有更新。这是一个错误吗?
请注意,MultiIndex 只有 (2, b),但它报告 1 和 'a' 在 index.levels 中。
我的解决方法是使用“干净”的多索引重新索引,如下所示:
编辑:
在使用 .ix 进行切片期间也会出现此问题,并且可能还会出现其他索引操作。
pandas - 使用带整数标签的多索引索引对数据帧进行部分更新
我正在使用具有混合索引标签的多索引数据框,即第一级包含字符串标签,第二和第三级是整数标签,第四级标签是日期。数据框如下所示(master_df)
我想取出 sub_df 作为 master_df.ix['B1',1,2,:],对 sub_df 做一些操作并将其存储回 master_df 的同一位置。我可以使用各种方法取出 sub_df,但是在将其存储回来时,我尝试过的所有选项似乎都不起作用。我想这个问题与拥有“整数”标签有关(在第二和第三拉维尔 - 开始-停止)。我尝试了以下选项/方法但没有任何成功
以上操作均未反映 master_df 的更改(我也没有收到任何错误消息。)
你能建议正确的方法吗?
更新 :
sub_df 和 master_df 没有与 sub_df 上的操作相同的索引,仅期望日期索引。sub_df 如下所示。
如果我尝试
我收到以下错误 -
TypeError:不可散列的类型:'numpy.ndarray'
这里的主要目的是仅对 master_df 的一小块进行操作,并将这些结果存储回 master_df 中的原始位置。我尝试使用更新方法,但是实现此目的的任何其他替代方法都可以。
c++ - 在一组 shared_ptr 中搜索
我有一个对象:
还有一个 multi_index 集
现在,如果我想在集合中找到一些东西,QString
我需要复制它以在堆中分配并创建shared_ptr
。
是否可以避免这种不必要的复制操作,保持原样?
serialization - 提升 multi_index_container 序列化
我正在尝试将 boost::multi_index_container 与 boost::serialization 一起使用。但是,当我使用指向对象的指针作为元素和non_unique顺序时,加载序列化容器时出现内存访问冲突。我发现有趣的是,唯一排序或使用对象而不是指针作为容器元素时不会发生错误。
有人可以告诉我我的代码是否有问题,或者这是 boost 库中的错误吗?
这是一个产生所描述错误的最小示例:
pandas - 在 pandas 中连接具有不同索引级别的数据帧
我无法理解 pandas 多索引的工作原理。具体来说:
- 如何合并不同索引级别的两个数据框(按行)
- 如何更改数据框的索引级别
使用上一个问题的示例:
我计算两个数据集
如何按行合并 t1 和 t2 ?
我尝试了以下
但
产生错误
ValueError:无法在 DataFrame 上调用 bool()。
我做错了什么?
提前致谢
python - 将 pandas MultiIndex DataFrame 从行转换为列
我正在使用 zipline 和 pandas 并已使用该方法将 a 转换pandas.Panel
为 a 。如您所见,这是多索引的结果:pandas.DataFrame
to_frame()
pandas.DataFrame
我需要将此框架转换为如下所示:
我已经尝试过 pivot 方法、stack/unstack 等,但这些方法不是我想要的。在这一点上我真的很困惑,任何帮助表示赞赏。
python - Pandas MultiIndex 中的重采样
我有一些分层数据,这些数据最终变成时间序列数据,看起来像这样:
我想对每个城市进行时间重采样,所以像
会输出
照原样,df.resample('2D', how='sum')
让我
很公平,但我有点希望这能奏效:
在这一点上我真的没有想法了......有什么方法可以帮助我吗?
pandas - Pandas:向多索引列数据框添加一列
我想将一列添加到多索引列数据框的第二级。
直接赋值的常用技巧不起作用:
如何将第三行添加到“栏”下?
c++ - 使用 Composite_key 和按位与比较来提升 multi_index_container
我想用 boost multi_index_container 和 composite_key 来实现这样的目标:
知道:
目标是能够执行以下操作:
这将允许我检索 LogicalAnd 返回 true 的所有元素。
问题是我无法让我的 LogicalAnd 比较器与我的 multi_index_container 一起工作。
我可以通过在composite_key_equal_to 之前添加一个composite_key_hash 来构建它:
但是find操作并没有按预期工作,所以它并没有太大变化......
我搜索了 boost 文档,并尝试了各种实现,但我被大量的信息淹没了......
任何帮助表示赞赏!