【问题标题】:I am trying to combine multiple rows into single rows in python/pandas我正在尝试在 python/pandas 中将多行组合成单行
【发布时间】:2021-06-30 20:21:44
【问题描述】:

我现在有三组行,我正在尝试将这些行组合成单行。 Current State of Data(图片只显示了两个基因,但我保证还有第三个)

我有三个独立的基因,每个基因都有 61 个 NX 值与之相关。我试图将每个基因的 61 行组合成每个基因的单行,并在行中列出其所有 NX 值,以便我可以轻松找到平均值。我不知道该怎么做。请帮忙。

这是我到目前为止的代码。

 import pandas as pd

df = pd.read_csv('rna_consensus.tsv', delimiter='\t')

df = df[df['Gene name'].isin(["ENPP4", "RAD52", "ICA1"])]

df = df[['Gene name', 'NX']]

【问题讨论】:

  • 为什么不直接求每个基因的NX平均值?
  • 主要是因为我对此很陌生,没有意识到这是一种选择。
  • 请在文本站点端提供示例数据

标签: python pandas dataframe


【解决方案1】:

你可以使用.groupby()GroupBy.mean()直接得到NX分组和Gene name的均值,如下:

df.groupby('Gene name', as_index=False)['NX'].mean()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 2020-12-25
    • 2023-03-09
    相关资源
    最近更新 更多