You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用pandas正确读取plink关联分析输出以提取P值绘制QQ图

PLINK关联分析结果文件正确读取方法

错误原因说明

PLINK默认输出的关联分析结果是多空格分隔的固定宽度对齐文本,不是制表符分隔格式,你之前指定sep='\t'的读取逻辑不符合文件的实际分隔规则,所以会出现所有列被合并为单个字段的异常情况。

可行读取方案

方案1:全表正确读取

直接用pandas的read_csv匹配任意多空白字符作为分隔符即可:

import pandas as pd
# sep='\s+' 表示匹配1个或多个任意空白字符(空格、制表符都可识别)
df = pd.read_csv("你的结果文件路径", sep='\s+')

读取后可以执行print(df.columns)验证列名是否正确拆分,执行print(df.head())查看前几行数据是否符合预期。

方案2:仅读取P值(大文件更高效)

如果你只需要最后一列的P值绘制Q-Q图,可以直接指定仅加载目标列,减少内存占用,避免大文件加载卡顿:

import pandas as pd
# usecols直接指定要加载的列名,无需读取全表
df_p = pd.read_csv("你的结果文件路径", sep='\s+', usecols=['P'])
# 过滤掉P值为NA的无效行,可直接用于后续绘图
p_values = df_p['P'].dropna()

额外注意事项

如果文件开头有PLINK生成的注释行(以#开头的说明行),可以额外加参数comment='#'跳过注释,避免读取报错:

df = pd.read_csv("你的结果文件路径", sep='\s+', comment='#')

内容的提问来源于stack exchange,提问作者Marcello Zago

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:06:05