下面是Pandas提取数据的三种方式的完整攻略,共包含三种方法:
1. 按行、按列提取数据方法
按行提取数据
Pandas可以通过 loc
和 iloc
方法按行提取数据。
其中,loc
方法使用标签来定位数据,iloc
方法使用索引来定位数据。以下是示例代码:
import pandas as pd
# 使用pandas读取本地csv文件
df = pd.read_csv('test.csv')
# 通过loc方法按行切片并打印出来
print(df.loc[1:5,:])
其中, loc[1:5,:]
等价于 df[1:6,:]
,效果相同。此代码会打印出行号为1到5的所有行。
按列提取数据
Pandas可以通过直接列名称来提取数据。
以下是示例代码:
import pandas as pd
# 使用pandas读取本地csv文件
df = pd.read_csv('test.csv')
# 按列提取数据
print(df['column_name'])
2. 逻辑索引方法
使用逻辑索引即使用bool值代替数据,例如:
df[df['column_name'] == condition]
其中,column_name
是列名称,condition
是具体条件,这个条件与列中的数据进行比较。如果为 True
,则保留相应行的数据,如果为 False
,则剔除相应行的数据。
以下是示例代码:
import pandas as pd
# 使用pandas读取本地csv文件
df = pd.read_csv('test.csv')
# 按条件提取数据
print(df[df['gender']=='female'])
以上代码将只输出 gender
列中为 female 的行数据。
3. 使用isin方法进行筛选
另一个有用的方法是 isin()
方法,它可以用来挑选想要选出的数据。示例如下:
import pandas as pd
df = pd.DataFrame({'A': ['foo', 'bar', 'baz', 'foo', 'bar', 'baz'],
'B': ['one', 'one', 'two', 'two', 'one', 'one'],
'C': [1, 2, 3, 4, 5, 6]})
# 选择'A'列中包含'bar'或'foo'的数据
print(df[df['A'].isin(['bar', 'foo'])])
以上代码将只输出 A
列中为 bar 或 foo 的行数据。
通过以上三种方式,就能方便简便地提取数据啦!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas提取数据的三种方式 - Python技术站