当前位置:首页 >> 编程语言 >> 【python pandas excel操作】,戴尔灵越14r拆机

【python pandas excel操作】,戴尔灵越14r拆机

0evadmin 编程语言 1
文件名:【python pandas excel操作】,戴尔灵越14r拆机 【python pandas excel操作】

目录

1、打开Excel,获取不同sheet的名称

2、获取不同sheet的内容

3、 获取行数以及表头

4、对某一列的信息进行筛选

5、根据列号和索引号提取一行或者一列的数据

6、其他panda对Excel的操作


 摘自:python对excel操作获取某一列,某一行的值,对某一列信息筛选_春风若是你的博客-CSDN博客_python遍历excel某行某列所有数据https://blog.csdn.net/weixin_43245453/article/details/90747259

1、打开Excel,获取不同sheet的名称 import pandas as pdpath = '1.xls'data = pd.read_excel(path,None)#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错print(data.keys())#查看sheet的名字for sh_name in data.keys():print('sheet_name的名字是:',sh_name)

data = {sheet1:sheet1的内容,sheet2:sheet2的内容,sheet3:sheet3的内容}

2、获取不同sheet的内容 sh_data = pd.DataFrame(pd.read_excel(path,表格页面名称sheet)) 3、 获取行数以及表头 import pandas as pdpath = 'G:\动力系\新建文件夹\什么.xls'data = pd.DataFrame(pd.read_excel(path))#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错print(data.index)#获取行的索引名称print(data.columns)#获取列的索引名称print(data['姓名'])#获取列名为姓名这一列的内容print(data.loc[0])#获取行名为0这一行的内容

4、对某一列的信息进行筛选

筛选使用的是data.loc[列名称 = 提取的信息]

假如我要提取院系下面的动力,代码如下:

import pandas as pdpath = 'G:\动力系\新建文件夹\什么.xls'data = pd.DataFrame(pd.read_excel(path))#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错result = data.loc[data['院系'] == '动力']#获取列明为院系,内容为动力的内容print(result)

5、根据列号和索引号提取一行或者一列的数据

第4条是根据列名称和行名称来提取一行或者一列的数据,若需要根据行号和列号(索引)来提取一行或者一列的数据则需要先将panda读取得到的数据先转换为数组,然后进行切片读取即可

def getData(xlsPath):data = read_excel(xlsPath, None) # 读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错sheetNames = data.keys()# 获取所有sheet的名称# bodys, names, name_money = [],[],{}for sheetName in sheetNames:sh_data = DataFrame(read_excel(xlsPath, sheetName)) # 获得每一个sheet中的内容# print(np.array(sh_data))# 获取指定字段的一列内容,类型为<class 'pandas.core.series.Series'># bodys_ = sh_data["部位"]# names_ = sh_data["报告医生"]bodys_ = np.array(sh_data)[:,7] # 先将pandas类型转化为数组,再根据索引取值names_ = np.array(sh_data)[:,16]# 转化为列表bodys = list(bodys_)names = list(names_)return bodys,names

# 获得一个sheet表格的所有内容

 sh_data = DataFrame(read_excel(xlsPath, sheetName))  # 获得每一个sheet中的内容

# 转换为数组

sh_data = np.array(sh_data)

# 切片操作,分别读取第i列和第j行

i_column = sh_data[:,i]

j_row = sh_data[j,:]

6、其他panda对Excel的操作

摘自:python中的dataframe的行、列切片等操作_春风若是你的博客-CSDN博客_dataframe按列切片https://blog.csdn.net/weixin_43245453/article/details/90056884

import numpy as npimport pandas as pddata = pd.DataFrame(np.arange(16).reshape(4,4),index = list("ABCD"),columns=list('wxyz'))print(data)print(data[0:2]) #取前两行数据print('+++++++++++++1111')print(len(data)) #求出一共多少行print(data.columns.size) #求出一共多少列print('+++++++++++++2222')print(data.columns) #列索引名称print(data.index) #行索引名称print('+++++++++++++3333')print(data.iloc[1]) #取第2行数据print('+++++++++++++444')print(data['x']) #取列索引为x的一列数据print(data.loc['A']) #取第行索引为”A“的一行数据,print('+++++++++++++555')print(data.loc[:,['x','z']]) #表示选取所有的行以及columns为a,b的列;print(data.loc[['A','B'],['x','z']]) #表示选取'A'和'B'这两行以及columns为x,z的列的并集;print('+++++++++++++6666')print(data.iloc[1:3,1:3]) #数据切片操作,切连续的数据块print(data.iloc[[0,2],[1,2]]) #即可以自由选取行位置,和列位置对应的数据,切零散的数据块print('+++++++++++++7777')print(data[data>2]) #表示选取数据集中大于0的数据print(data[data.x>5]) #表示选取数据集中x这一列大于5的所有的行print('+++++++++++++8888')a1 = data.copy()print(a1[a1['y'].isin(['6','10'])]) #表显示满足条件:列y中的值包含'6','8'的所有行。print('+++++++++++++9999')print(data.mean()) #默认对每一列的数据求平均值;若加上参数a.mean(1)则对每一行求平均值;print(data['x'].value_counts()) #统计某一列x中各个值出现的次数:print('+++++++++++++101010')print(data.describe()) #对每一列数据进行统计,包括计数,均值,std,各个分位数等。

C:\Users\innduce\Desktop\jianmo\Scripts\python.exe G:/untitled1/narry.py     w   x   y   z A   0   1   2   3 B   4   5   6   7 C   8   9  10  11 D  12  13  14  15    w  x  y  z A  0  1  2  3 B  4  5  6  7 +++++++++++++1111 4 4 +++++++++++++2222 Index(['w', 'x', 'y', 'z'], dtype='object') Index(['A', 'B', 'C', 'D'], dtype='object') +++++++++++++3333 w    4 x    5 y    6 z    7 Name: B, dtype: int32 +++++++++++++444 A     1 B     5 C     9 D    13 Name: x, dtype: int32 w    0 x    1 y    2 z    3 Name: A, dtype: int32 +++++++++++++555     x   z A   1   3 B   5   7 C   9  11 D  13  15    x  z A  1  3 B  5  7 +++++++++++++6666    x   y B  5   6 C  9  10    x   y A  1   2 C  9  10 +++++++++++++7777       w     x     y   z A   NaN   NaN   NaN   3 B   4.0   5.0   6.0   7 C   8.0   9.0  10.0  11 D  12.0  13.0  14.0  15     w   x   y   z C   8   9  10  11 D  12  13  14  15 +++++++++++++8888    w  x   y   z B  4  5   6   7 C  8  9  10  11 +++++++++++++9999 w    6.0 x    7.0 y    8.0 z    9.0 dtype: float64 13    1 5     1 9     1 1     1 Name: x, dtype: int64 +++++++++++++101010                w          x          y          z count   4.000000   4.000000   4.000000   4.000000 mean    6.000000   7.000000   8.000000   9.000000 std     5.163978   5.163978   5.163978   5.163978 min     0.000000   1.000000   2.000000   3.000000 25%     3.000000   4.000000   5.000000   6.000000 50%     6.000000   7.000000   8.000000   9.000000 75%     9.000000  10.000000  11.000000  12.000000 max    12.000000  13.000000  14.000000  15.000000

Process finished with exit code 0

协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接