A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import pandas as pd


Excel:双击文件打开
Python:data = pd.read_excel('XXX.xlsx', sheet_name='工作表1')
data属于<class 'pandas.core.frame.DataFrame'>类型


基本信息查看-简单查看:

Excel:简单查看
Python:print(data.head()) #简单查看前5行
基本信息查看-行/列数:

Excel:点击某行/列,查看计数值
Python:
print(data.shape[1]) #查看列数
print(data.shape[0]) #查看行数
基本信息查看-单元格数:

Excel:全选表格内容,查看计数值
Python:print(data.size)
基本信息查看-列名称:

Excel:查看列名称
Python:print(data.columns)
基本信息查看-查看某行/列具体信息:

Excel:查看某行/列具体信息
Python:
print(data['XXX']) #查看某列具体信息
print(data[1:2]) #查看某行具体信息
print(data.iloc[0]) #查看某行具体信息(根据行号)
print(data.loc[0]) #查看某行具体信息(根据索引)
'XXX'必须为具体的列名称
基本信息查看-查看某(一个或多个)单元格具体信息:

Excel:查看某(一个或多个)单元格具体信息
Python:print(data.loc[[0,2],['XXX','YYY']]) #0和2行,'XXX'和'YYY'列对应的信息
基本信息查看-查看某块(N*M)单元格具体信息:

Excel:查看某块(N*M)单元格具体信息
Python:print(data.iloc[0:3,0:3]) #查看0~2行和0~2列之间的区域
pd.iloc[i,j] i,j 只能是数字,即原始索引
pd.loc[i,'j'] i,j既可以是数字,也可是字母,即索引标签


信息筛选-列信息筛选:

Excel:数据筛选
Python:data = data[(http://data.XXX >=20) & (http://data.XXX <=30) & (data.YYY.isin(['A','B']))]
XXX筛选数据范围,YYY筛选条件(取反在前面加 ~,~data.YYY.isin(['A','B']) )


信息删除-删除某行/列:

Excel:删除行/列
Python:
data = data.drop([0,2,4,6,8]) #删除行
data = data.drop(columns=['XXX','YYY']) #删除列
信息删除-删除空值:

Excel:删除空值
Python:data = data.dropna(how ='any') #删除空值 how ='any'/'all'
'any':如果存在任何NA值,则删除该行或列
'all':如果所有值都是NA,则删除该行或列


信息插入-插入某行/列:

Excel:插入行/列
Python:
data['new'] = 0 #插入最后一列
data.insert(1,'new',0) #指定位置插入一列


数据替换-替换空值:

Excel:选中->查找->替换
Python:data.fillna(0) #将所有空值用0(数字)填充
数据替换-替换某列的特定值:

Excel:选中->查找->替换
Python:
for i in range(data.shape[0]):
if data.loc[,['XXX']].values >=10:
data.loc[, ['XXX']] = 0


合并拆分列-多列合并为一列:

Excel:=A2&"-"&B2
Python:data['new'] = data['XXX'].map(str) + "-" +data['YYY'].map(str)
合并拆分列-一列拆分为多列:

Excel:分列->分隔符
Python:
data['XXX_split'] = data['XXX'].str.split('-')
data['XXX_split1'] = data['XXX_split'].str[0]
data['XXX_split2'] = data['XXX_split'].str[1]


排序:

Excel:排序(升/降)
Python:data = data.sort_values(by = ['XXX','YYY'], ascending = True) #ascending = True(升序)/False(降序)


内容匹配:

Excel:=vlookup(lookup_value,table_array,col_index_num,range_lookup)
Python:data = pd.merge(data1, data2, how='left', on=['XXX','YYY'])


数字格式处理:

Excel:=int(X)向下取整
Python:data['XXX'] = data['XXX'].astype(int)


透视表:

Excel:插入->数据透视表
Python:
data = pd.pivot_table(data,
index=['X','XX'], #行
columns=['Y','YY'], #列
values=['Z','ZZ'], #值
aggfunc=[np.sum,np.mean,len], #汇总 均值 计数
margins=True) #汇总信息 不需要汇总 False
---------------------
【转载,仅作分享,侵删】
作者:程序员小城
原文:https://blog.csdn.net/w17688977481/article/details/88784465
版权声明:本文为博主原创文章,转载请附上博文链接!

1 个回复

正序浏览
奈斯,感谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马