Excel篇
1、Excel如何提取指定字符内容
=LEFT(C2,3)
提取货号数字
=RIGHT(C2,4)
提取单号字母
=LEFT(D2,FIND("-",D2)-1)
=MID(D2,FIND("-",D2)+1,100)
2、Excel如何数据逆透视
在主页中单击将第一行用作标题。
按住Ctrl键选中不需要逆透视的列,在转化选项卡下点击逆透视其他列。
如框选的部分,数据完成逆透视,在主页选项卡下点击关闭并上载功能,将数据加载至sheet表中。
3、Excel数据如何分组合并
数据分组后合并,选择单元格数据区域,点击数据选项卡,点击获取与转换中的从表格,点击创建表。
选择转换选项卡分组依据,分组类别为产品类别,柱为产品名称,操作为求和,点击确定。
将阴影选中的公式部分List.Sum替换为Text.Combine。
如框选的部分,数据完成分组合并,在主页选项卡下点击关闭并上载功能,将数据加载至sheet表中。
1、SQL的执行顺序
大多数编程语言代码都是按编码顺序执行的,但是在SQL语言中,第一个被执行的语句是FROM子句,每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入,如下的顺序即SQL的执行顺序。
(8)SELECT (9)DISTINCT (11)<Top Num> <select list>
(1)FROM [left_table]
(3)<join_type> JOIN <right_table>
(2)ON <join_condition>
(4)WHERE <where_condition>
(5)GROUP BY <group_by_list>
(6)WITH <CUBE | RollUP>
(7)HAVING <having_condition>
(10)ORDER BY <order_by_list>
2、计算用户的平均次日留存率
select count(t3.device_id)/count(t2.device_id) as avg_ret
from (select t1.*,date_add(t1.date,interval 1 day) as diertian
from (select distinct device_id,date from question_practice_detail ) as t1) as t2
left join (select distinct device_id,date from question_practice_detail)
as t3 on t2.device_id=t3.device_id and t2.diertian=t3.date;
1、批量合并同一文件夹不同工作簿数据
import pandas as pd
import os
path=r'C:\Users\尚天强\Desktop\测试'
listdir=os.listdir(path)
df=pd.read_excel(path+'\\'+ listdir[0])#导入第一个数据表
for filename in listdir[1:]:
dfi=pd.read_excel(path+'\\'+ filename) #导入除第一个数据表外其他数据表
df=pd.concat([df,dfi]) #数据纵向合并
df.to_excel(path+'\\'+'数据合并.xlsx',index=False)
import pandas as pd
import os
dfs = []
read_path=r'C:\Users\尚天强\Desktop\测试数据'
save_path=r'C:\Users\尚天强\Desktop'
save_name='out_table.xlsx'
for fname in os.listdir(read_path):
if fname.endswith(".xlsx") and fname !=save_name:
df = pd.read_excel(read_path+"\\"+fname,skiprows=1,header=None,sheet_name=None) #names=['序列','日期','销量']
dfs.extend(df.values())
#合并
result = pd.concat(dfs)
#导出数据
result.to_excel(save_path+"\\"+save_name,index=False,header=['id','number','sale'])
2、批量合并不同工作簿不同sheet表数据
该方法首先建一个空的表格,使用openpyxl库,循环导入不同工作簿,不同sheet表,不同行的数据,然后进行合并。
from openpyxl import Workbook,load_workbook
import os
def concat_data(file_path,save_path):
files_name=os.listdir(file_path)
#创建新表格
new_wb=Workbook()
new_ws=new_wb.active
header=['销售日期', '员工工号', '销售员', '货号', '销售单编号', '销量', '销售额']
new_ws.append(header)
#向新的表格写入数据
for file_name in files_name:
wb=load_workbook(file_path+"\\"+file_name)
for sheet in wb.sheetnames:
ws=wb[sheet]
for row in ws.iter_rows(min_row=2,values_only=True):
new_ws.append(row)
#数据保存
new_wb.save(save_path+"\\"+"数据合并.xlsx")
concat_data(r"C:\Users\尚天强\Desktop\2017年销售明细",r"C:\Users\尚天强\Desktop")
3、Python批量数据拆分
如果将汇总的数据表按照某个品牌或者企业进行批量拆分,首先使用unique函数将需要拆分的字段去重,然后使用df.loc函数循环筛选,最后数据导出。
import pandas as pd
df=pd.read_excel(r'C:\Users\尚天强\Desktop\数据批量拆分.xlsx')
city=df['城市'].unique().tolist()
for i in city:
df1=df.loc[df['城市']==i]
df1.to_excel(r'C:\Users\尚天强\Desktop'+'\\'+ i + '.xlsx',index=False)
4、Python计算当前时间进度
计算当前的时间进度,定义一个字典,月份键对应着天数值,使用datetime函数计算求得。
import datetime
#时间进度
dic = {"1月": 31, "2月": 28, "3月": 31, "4月": 30, "5月": 31, "6月": 30, "7月": 31, "8月": 31, "9月": 30, "10月": 31,"11月": 30, "12月": 31}
for i in range(12):
if datetime.datetime.now().month == i + 1:
timing = round((datetime.datetime.now().day / dic["{}月".format(i + 1)]) ,2)
print('当前本月时间进度为:{:.0%}'.format(timing))
当前本月时间进度为:35%
5、Python计算数据环比
import pandas as pd
import numpy as np
df=pd.DataFrame(data=np.random.randint(100, 500, (7, 1)),
index=pd.date_range('2021/12/01',periods=7),
columns=['销量'])
df['环比']=df['销量'].pct_change().apply(lambda x:format(x,'.2%'))
df
- END -
开启职业新征程
职业规划帮你掌握人生航向
了解自己的优势,找到适合自己的岗位!
人生不只有一条路,
职业规划帮你发现更多可能性!
赶快来了解一下吧
👇👇👇
仅需9.9元
让爱数据助力你的职场生涯