• 【月度总结】数据库&Python&Excel_202206


    Excel

    1、将表格变为超级表

    实现方法:Ctrl+T
    功能:当有新的数据时,数据图形得到及时更新

    2、创建透视表

    Alt + D +P

    3、动态图表

    4、index函数

    语法:index(reference,row_now,column_num,area_num)
    参数:
    reference:必需,对一个或多个单元格的引用。
    row_num:引用中某行的行号,函数从该行返回一个引用。
    column_num:可选,引用中某列的列标,,函数从该列返回一个引用。
    area_num:可选,选择一个引用区域,从该区域中返回row_num和column_num的交集
    5、 “相差天数”后面输入:=DATEDIF(C5,C6,"D"),
    注意:其中,C5为开始日期,C6为结束日期,D则为计算日差。

    数据库

    1、可以向数据库表中,指定的列添加数据

    insert into sku_data (sku,cw_type) values (%s,%s)

    Python

    1、利用python 对分组排序:

    按照旺旺号,订单号,金额进行分组,并按付款时间进行排序
    data1['ranks'] = data.groupby(['旺旺号','订单号','商品金额']['付款时间'].rank().astype(int)

    2、利用Python构建双层索引,并将双层变成一层。

    data2 = pd.pivot_table(data1,values = ['商品金额'],index = ['旺旺号','付款时间'],columns =['ranks'])
    data2.columns.tolist()
    #对列名重命名
    data2.columns =[str(s1) +"第"+str(s2)+"次" for (s1,s2) in data2.columns.tolist()]
    data2.reset_index(inplace =True)  #重置索引,然后拉平索引

    3、分布密度图,可视化制图方法:sns.distplot()

    辅助线制图方法:plt.axvline()

    4、 将占比转为把百分比的形式

    bk_std_fsl['订单占比'] = bk_std_fsl['订单数'].apply(lambda x: '%.2f%%' % (x / bk_std_fsl['订单数'].sum() * 100))

    5、去掉缺失值

    data.dropna(inplace = True)   # 去掉缺失值

    6、python pandas去掉重复项

    删除所有重复项:
    df.drop_duplicates(inplace = True)
    Remember:  (inplace = True) 将确保该方法不会返回一个新的DataFrame,但是它将从原始DataFrame中删除所有重复。

    7、将多种类型数据进行替换

    例如将DataFrame中的空值,某些字符串等全都替换成0
    replace([na.nan,'无数据','无数'],0,inplace = True)

    8、转置

    data.T

    9、numpy.concatenate()方法

          numpy提供了numpy.concatenate((a1,a2,a3,……),axis =0),能够一次完成多个数组的拼接,其中a1,a2,a3是数组类型的参数。
    a = np.array([2,3,4])
    b = np.array([11,22,22])
    c = np.array([55,88,99])
    np.concatenate((a,b,c),axis =0)  #默认情况下,axis=0可以不写
        array([  2,  3, 4,11, 22, 22, 55, 88,99]) #对于一维数组拼接,axis的值不影响最后的结果。
    例如:
    angle= np.linspace(0,2*np.pi,4,endpoint=False)  # 设置每个数据点的显示位置
    angle = np.concatenate((angle,[angle[0]]))

    10、pd.cut()参数

    pd.cut( x,bins,right=True,labels=None,retbins=False,precision=3,include_lowest=False,duplicates='raise' )
    • x : 一维数组
    • bins :整数,标量序列或者间隔索引,是进行分组的依据,
            如果填入整数n,则表示将x中的数值分成等宽的n份(即每一组内的最大值与最小值之差约相等);
            如果是标量序列,序列中的数值表示用来分档的分界值
            如果是间隔索引,“ bins”的间隔索引必须不重叠
    • right :布尔值,默认为True表示包含最右侧的数值
            当“ right = True”(默认值)时,则“ bins”=[1、2、3、4]表示(1,2],(2,3],(3,4]
            当bins是一个间隔索引时,该参数被忽略。
    • labels : 数组或布尔值,可选.指定分箱的标签
            如果是数组,长度要与分箱个数一致,比如“ bins”=[1、2、3、4]表示(1,2],(2,3],(3,4]一共3个区间,则labels的长度也就是标签的个数也要是3
            如果为False,则仅返回分箱的整数指示符,即x中的数据在第几个箱子里
            当bins是间隔索引时,将忽略此参数
    • retbins: 是否显示分箱的分界值。默认为False,当bins取整数时可以设置retbins=True以显示分界值,得到划分后的区间
    • precision:整数,默认3,存储和显示分箱标签的精度。
    • include_lowest:布尔值,表示区间的左边是开还是闭,默认为false,也就是不包含区间左边。
    • duplicates:如果分箱临界值不唯一,则引发ValueError或丢弃非唯一

    11、matplotlib.pyplot.axvline()

    参数:
    x: 数据坐标中的x位置以放置垂直线
    ymin: y轴上的垂直线起始位置,它将取0到1之间的值,0是轴的底部,1是轴的顶部
    ymax: y轴上的垂直线结束位置,它将取0到1之间的值,0是轴的底部,1是轴的顶部
    **kwargs: 其他可选参数可更改线的属性,例如
    改变颜色,线宽等

    12、设置网格线

    以下实例添加一个简单的网格线,并设置网格线的样式,格式如下:
    grid(color ='color', linestyle ='linestyle', linewidth = number)参数说明:
        color:'b' 蓝色,'m' 洋红色,'g' 绿色,'y' 黄色,'r' 红色,'k' 黑色,'w' 白色,'c' 青绿色,'#008000' RGB 颜色符串。
        linestyle:'' 实线,'' 破折线,'.' 点划线,':' 虚线。
        linewidth:设置线的宽度,可以设置一个数字。

    13、matplotlib面积堆叠图

    data.plot.area(colormap='',figsize =(x,y))
    colormap表示要用的颜色块

    14、matplotlib 雷达图

    •  绘制雷达图,需要先建立极坐标;
    • 建好极坐标以后,可以在极坐标系中绘制柱状图,折线图等,大部分情况都是用折线图,形成一个不规则的闭合多边形。
    绘制多个点,并且第一个点与最后一个点相同,使其成为闭合图形。
    plt.polar(弧度,半径,"ro",lw)    #使用的是弧度制,使用弧度来表示度数;ro中r表示红色,o表示形状;lw表示点的大小
    例如:
    360度,表示2Π(2*np.pi);180度表示Π(np.pi)
    plt.polar(0.25*np.pi,20,)
  • 相关阅读:
    《IP编址与路由:网络层的关键技术》
    一种新型侧信道攻击方法,影响大部分苹果 A&M 系列芯片
    leetcode top100(6) 三数之和(双指针)
    Java后端面试精选45题
    MINIO部署时报的错误
    CSV 文本过滤查询汇总计算
    神经系统的组成结构图谱,神经系统的基本结构图
    SpringBoot解决跨域问题的六种方式
    基于51单片机DS18B20温度及电流检测-proteus仿真-源程序
    Kruise Rollout v0.2.0 版本发布:支持 Gateway API、StatefulSet 分批发布等能力
  • 原文地址:https://blog.csdn.net/bingbangx/article/details/125597021