python - iloc[] 按值列

标签 python pandas

我想对列中的值使用 iloc。

df1 = pd.DataFrame({'col1': ['1' ,'1','1','2','2','2','2','2','3' ,'3','3'],
                'col2': ['A' ,'B','C','D','E','F','G','H','I' ,'J','K']})

我想在每个列值中选择索引 2 作为数据框,结果如下

col1 col2
   1    C
   2    F
   3    K

非常感谢

最佳答案

使用GroupBy.nth :

df2 = df1.groupby('col1', as_index=False).nth(2)

替代 GroupBy.cumcount :

df2 = df1[df1.groupby('col1').cumcount().eq(2)]

print (df2)
   col1 col2
2     1    C
5     2    F
10    3    K

关于python - iloc[] 按值列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71392956/

相关文章:

python - pandas:将 DataFrame 拆分为 Series 会导致 NaN

python - Pandas:计算自上次标签测量以来的时间

java - 如何从 jython 的 url 中删除 .py

python - 当它对整个句子调用reverse,然后对每个单词调用reverse时,这个解决方案如何反转句子中的单词 O(N)?

Python、Django : catch SMTPRecipientsRefused. 改为获取 "undefined variable"

python - 从python中的一个圆圈中获取数据

python - read_csv 获取发生异常的行

python - 一种仅针对频繁值的热编码

python - 根据字符串值过滤Python列表中的对象

python - 使用列数组向量化 pandas 数据框列查找