pandas笔记
import numpy as np, pandas as pd
import os
path0 = os.getcwd()#获取当前文件路径
读取excel
df4G = pd.read_excel(path0+ “/4G基础台帐表20210226.xlsx”, sheet_name = “4G小区台账”, header = 0)
选择需要的列
df4G=df4G[[“小区名称”,“基站标识”,“行政区(对市场)”]]
连接数据帧
data0 = pd.concat([HW2,ZX2,ALX2])
修改数据帧类型(修改为字符串类型)
data31=data31.astype(‘str’)
数据匹配
data0=pd.merge(data0,df4G,how=“left”,left_on=‘小区名称’,right_on=‘小区名称’,sort=False)
分组求和
data1=data0.groupby([‘行政区(对市场)’],as_index=False).agg({‘全天总流量(MByte)’:‘sum’})
指定位置添加列
data11.insert(0,‘日期’,‘2021年2月’)
修改某一列数值
data1[‘全天总流量(MByte)’]=data1[‘全天总流量(MByte)’]/1024/1024
重命名列
data1.rename(columns={‘全天总流量(MByte)’:‘4G 2.28流量日均值(TB)’},inplace=True)
列乘法并新增至新列
df2[‘4G业务回流比例’]=df2[‘4G 2.28流量日均值(TB)’]/df2[‘4G 12月流量日均值(TB)’]
新增一行 及 列数据求和
data1.loc[‘14’] = [‘全网’,data1[‘4G 2.28流量日均值(TB)’].sum()]
DataFrame.to_excel 直接输出excel表(只能输出一个sheet)
df2.to_excel(path0+ “/45G 业务回流比例.xlsx”, sheet_name = “Sheet1”,index=0)
使用writer输出Excel表(可输出多个sheet)
writer=pd.ExcelWriter(path0 + “/45G 2.28流量日均值.xlsx”)
data45G.to_excel(writer,sheet_name=‘Sheet1’,encoding=‘utf-8’,index=0)
writer.save()
字符串分割(取出不带括号的字符串)
data5G[‘gNodeB名称’]=data5G[‘gNodeB名称’].str.split(’(’,expand=True)[0]#取出不带括号的字符串
遍历文件夹并合并数据帧
path1 = path0.replace("\", “/”) + “/华为/”
path2 = path0.replace("\", “/”) + “/中兴/”
path3 = path0.replace("\", “/”) + “/爱立信/”
files1 = os.listdir(path1)
files2 = os.listdir(path2)
files3 = os.listdir(path3)
li1=[]
li2=[]
li3=[]
for file in files1:
li1.append(pd.read_excel(path1 + file,sheet_name=“天级KPI指标”))
result1 = pd.concat(li1)
for file in files2:
li2.append(pd.read_excel(path2 + file,sheet_name=“Sheet0”))
result2 = pd.concat(li2)
for file in files3:
li3.append(pd.read_excel(path3 + file,sheet_name=“Sheet1”))
result3 = pd.concat(li3)