【发布时间】:2026-02-16 11:20:07
【问题描述】:
你如何分割以下 df 使得第二级 != 二。
在我的实际情况中,我的第二级是日期范围,我希望能够选择除一个日期之外的所有内容。
来自MultiIndex / Advanced Indexing
In [1]: arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],
['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]
In [2]: tuples = list(zip(*arrays))
In [4]: index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second'])
In [16]: df = pd.DataFrame(np.random.randn(3, 8), index=['A', 'B', 'C'], columns=index)
In [38]: df = df.T
In [65]: df
Out[65]:
A B C
first second
bar one 0.895717 0.410835 -1.413681
two 0.805244 0.813850 1.607920
baz one -1.206412 0.132003 1.024180
two 2.565646 -0.827317 0.569605
foo one 1.431256 -0.076467 0.875906
two 1.340309 -1.187678 -2.211372
qux one -1.170299 1.130127 0.974466
two -0.226169 -1.436737 -2.006747
In [66]: df.xs('one', level='second')
Out[66]:
A B C
first
bar 0.895717 0.410835 -1.413681
baz -1.206412 0.132003 1.024180
foo 1.431256 -0.076467 0.875906
qux -1.170299 1.130127 0.974466
我很惊讶@pandas.pydata.org 的文档如此糟糕。没有任何示例的解释。就像文档是由专家为已经熟悉 pandas 的所有功能的人编写的一样。
为什么文档没有提供代码来重新生成示例?
【问题讨论】:
-
如果您在没有受过教育/学习基础知识的情况下使用 pandas 的高级功能,您会发现文档难以阅读。文档是渐进的。他们不会重复基础知识。
-
你能给我指出一个好的资源/教程来学习基础知识吗?我一直在浏览各种资源,例如 Wes.M 和其他人的 Youtube 研讨会以及文档。但是,我还没有找到一个真正好的来源来学习一个坚实的基础。
-
people.duke.edu/~ccc14/sta-663/UsingPandas.html 我真的很喜欢这里的工作,节奏快。击中关键亮点
标签: python pandas indexing slice