pandas 选取子集的操作

本文详细介绍了如何使用pandas进行数据子集的选择,包括理解axis、选取单列、通过label筛选、按索引定位、条件筛选以及利用df.isin()函数。通过实例展示了各种方法的运用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前段时间学习了pandas,也做了一些练习,今天做一下梳理。

pandas 中对于axis的理解

在对dataframe操作的时候,很多时候涉及到了axis的设置,我找到一幅图很好的能理解axis:
这里写图片描述

数据准备

读取otu.txt表并且选取5行5列

import pandas as pd

df = pd.read_csv("otu_taxon.txt",header=0,index_col=0,sep="\t")
df = df.iloc[0:5,0:5]
df.to_csv("otu.txt",sep="\t")

现在的otu.txt:

$ cat otu.txt
OTU     A1      A2      A3      A4      A5
OTU_1   102     111     221     98      70
OTU_2   13      1       39      22      1
OTU_3   8508    8208    8165    8882    7499
OTU_4   2122    1881    2414    2520    1923
OTU_5   7700    7442    11718   6392    7546

单独选取其中一列

df[“colname”] or df.colname

import pandas as pd

df = pd.read_csv("otu.txt",header=0,index_col=0,sep="\t")

A1 = df["A1"]
print "A1 = df['A1']:",A1

A1 = df.A1
print "A1 = df.A1",A1

两种方法的输出结果:

$ python pand.py
A1 = df['A1']: OTU
OTU_1     102
OTU_2      13
OTU_3    8508
OTU_4    2122
OTU_5    7700
Name: A1, dtype: int64
A1 = df.A1 OTU
OTU_1     102
OTU_2      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值