python 切片取最后一列_机器学习Python——pandas取行、列、切片

本文介绍了如何使用Python的Pandas库进行数据操作,包括选取数据框的特定行、列、切片,以及利用索引和条件进行数据过滤。示例代码展示了如何获取数据框的前三行、统计行数和列数、选取指定列的数据、按条件筛选数据等操作。

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

# -*- coding: utf-8 -*-

import numpy as np

import pandas as pd

data = DataFrame(np.arange(20).reshape(4,5),index = list("ABCD"),columns=list('vwxyz'))

'''

v w x y z

a 0 1 2 3 4

b 5 6 7 8 9

c 10 11 12 13 14

d 15 16 17 18 19

'''

print(data[0:3]) # 取前三行数据

'''

v w x y z

a 0 1 2 3 4

b 5 6 7 8 9

c 10 11 12 13 14

'''

print(len(data)) #统计表格行数 4

print(data.columns.size) #统计表格列 5

print(data.columns) #列索引名称

# Index(['v', 'w', 'x', 'y', 'z'], dtype='object')

print(data.index) #行索引名称

# Index(['a', 'b', 'c', 'd'], dtype='object')

print(data.ix[1]) #取第二行数据

'''

v 5

w 6

x 7

y 8

z 9

'''

print(data.iloc[1]) #取第2行数据

'''

v 5

w 6

x 7

y 8

z 9

'''

print(data['x']) #取列索引为x的一列数据

'''

a 2

b 7

c 12

d 17

'''

print(data.loc['a']) #取第行索引为'a'的一行数据

'''

v 0

w 1

x 2

y 3

z 4

'''

print(data.loc[:,['w','y']]) #表示选取所有的行以及columns为'w','y'的列

'''

w y

a 1 3

b 6 8

c 11 13

d 16 18

'''

print(data.loc[['b','c'],['w','y']]) #表示选取'b'和'c'这两行以及columns为'w','y'的列的并集

'''

w y

b 6 8

c 11 13

'''

print(data.iloc[1:3,2:5]) #数据切片操作,切连续的数据块

'''

x y z

b 7 8 9

c 12 13 14

'''

print(data.iloc[[0,2,3],[1,3,4]]) #即可以自由选取行位置,和列位置对应的数据,切零散的数据块

'''

w y z

a 1 3 4

c 11 13 14

d 16 18 19

'''

print(data[data>2]) #表示选取数据集中大于2的数据

'''

v w x y z

a NaN NaN NaN 3 4

b 5.0 6.0 7.0 8 9

c 10.0 11.0 12.0 13 14

d 15.0 16.0 17.0 18 19

'''

print(data[data.w>5]) #表示选取数据集中'w'这一列大于5的所有的行

'''

v w x y z

b 5 6 7 8 9

c 10 11 12 13 14

d 15 16 17 18 19'''

a1=data.copy()

print(a1[a1['y'].isin(['8','13'])]) #表显示满足条件:列'y'中的值包含'8','13'的所有行

'''

v w x y z

a 0 1 2 3 4

b 5 6 7 8 9

c 10 11 12 13 14

d 15 16 17 18 19

-------------------------

v w x y z

b 5 6 7 8 9

c 10 11 12 13 14

'''

print(data.mean()) #默认对每一列的数据求平均值;若加上参数data.mean(1)则对每一行求平均值

'''

v 7.5

w 8.5

x 9.5

y 10.5

z 11.5

'''

print(data['x'].value_counts()) #统计某一列x中各个值出现的次数

'''

7 1

12 1

2 1

17 1

'''

print(data.describe()) #对每一列数据进行统计,包括计数,均值,std,各个分位数等

'''

v w x y z

count 4.000000 4.000000 4.000000 4.000000 4.000000

mean 7.500000 8.500000 9.500000 10.500000 11.500000

std 6.454972 6.454972 6.454972 6.454972 6.454972

min 0.000000 1.000000 2.000000 3.000000 4.000000

25% 3.750000 4.750000 5.750000 6.750000 7.750000

50% 7.500000 8.500000 9.500000 10.500000 11.500000

75% 11.250000 12.250000 13.250000 14.250000 15.250000

max 15.000000 16.000000 17.000000 18.000000 19.000000

'''

data.to_excel(r'./data.xls',sheet_name='Sheet1') #数据输出至Excel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值