python-3.x - 按列名拼接 Pandas 数据框

标签 python-3.x pandas dataframe

我正在尝试按标题名称从特定列之后开始拆分 Pandas 数据框的副本。

到目前为止,我已经能够根据一组已知列来操作列标题或索引,如下所示。但是,列数会发生变化,我仍然想提取之后发生的每一列。

在下面的示例中,假设我想获取“Tail”之后的所有列,即使“Body”列转到列 X 也是如此。所以下面的示例有 X 个 Body 列:

df = pd.DataFrame({'Intro1': ['blah'],
            'Intro2': ['blah'],'Intro3': ['blah'],'Body1': ['blah'],'Body2': ['blah'],'Body3': ['blah'],'Body4': ['blah'], ... 'BodyX': ['blah'],'Tail': ['blah'],'OtherTail': ['blah'],'StillAnotherTail': ['blah'],})

应该生成数据帧的副本:

dftail = pd.DataFrame({'Tail': ['blah'],'OtherTail': ['blah'],'StillAnotherTail': ['blah'],})

理想情况下,我想找到一种方法来组合下面的两种技术,以便该列从“尾部”开始并到达数据框的末尾:

dftail = [col for col in df if col.startswith('Tail')]

dftail = df.iloc[:, 164:] # column number (164) will change based on 'Tail' index number

最佳答案

这个怎么样:

df_tail = df.iloc[:, list(df.columns).index("Tail"):]

df_tail 然后打印出来:

    Tail    OtherTail   StillAnotherTail
0   blah    blah        blah

关于python-3.x - 按列名拼接 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59310617/

相关文章:

listview - 如何上下移动多个ListStore元素

python - Dataframe 访问第二级 MultiIndex

python - 压缩 pandas DataFrame 以具有非空值并修改列名

python - Pandas 数据框到嵌套计数器字典

python - 从多级索引数据框中有选择地删除列

python - PyGTK弃用警告 : What am I missing?

python - 在python中绘制带有图例的垂直线

python - 将所有 pyspark 数据帧列连接成一个字符串列

python - Scrapy 选择具有特定属性名称的 HTML 元素

python - 删除 Pandas Dataframe 中的非等效多索引行