zoukankan      html  css  js  c++  java
  • datefram学习(持续更新)

     1 # -*- coding:utf-8 -*-
     2 # @Time  : 2021/9/15:10:56
     3 # @Author: gujian
     4 # @File  : datefram 数据表操作.py
     5 
     6 ''' #查看数据表结构类型
     7 df.info()
     8 df.dtypes
     9 '''
    10 
    11 
    12 ''' #左联
    13 all_sdate = pd.merge(date_list_1, date_list_2, left_on=['姓名','邮件ID'], right_on=['姓名','邮件ID'], how='left')
    14 '''
    15 
    16 ''' #重新建立索引
    17 all_sdate.reindex(columns = ['邮件ID'])
    18 '''
    19 
    20 ''' #删除某一列
    21 all_sdate.drop('批复日期_y',axis=1,inplace=True)
    22 del df['销售辅助']
    23 '''
    24 
    25 ''' #复制到剪切板
    26 all_sdate.to_clipboard(sep=',', index=None) 
    27 '''
    28 
    29 ''' #写入到excel
    30 all_sdate.to_excel(pathfile, encoding='utf_8_sig', index=None)
    31 '''
    32 
    33 ''' #为某行某列修改或增加数据
    34 list.loc[pcount,'报备日期'] = data
    35 '''
    36 
    37 ''' #创建一个空的datefram
    38 list = pd.DataFrame(columns=['邮件ID','姓名','报备日期'])
    39 '''
    40 
    41 ''' #查询sql并返回结果datefram格式
    42 df = pd.read_sql(sql_text, con=con)
    43 '''
    44 
    45 ''' #帅选某些符合的行
    46 all_sdate = all_sdate[all_sdate['批复日期'].isin(['2021-09-15'])]
    47 df = df[(df['创建时间'] > startDate) & (df['创建时间'] < endDate)]
    48 '''
    49 
    50 ''' #重新选择某些列
    51 result = result.reindex(columns=[u'courseId', u'teacherName', u'courseDate', u'courseName', u'beginTime', u'attendNum'])
    52 '''
    53 
    54 ''' #行列转换
    55 result = result.drop_duplicates().T.drop_duplicates().T
    56 '''
    57 
    58 ''' #数据表的合并5中
    59 @1、append纵向合并追加————all_course = all_course.append(dfdate, ignore_index=True)
    60 @2、merge类似于关系数据库的链接————all_sdate = pd.merge(date_list_1, date_list_2, left_on=['姓名','邮件ID'], right_on=['姓名','邮件ID'], how='left')
    61 @3、combine使用函数按列合并————
    62 @4、concate横向和纵向的合并————
    63 @5、join基于索引的链接合并————
    64 '''
    65 
    66 ''' #使用匿名函数
    67 all_course['课程类型'] = all_course.apply(lambda x: fum_allcourse(x), axis=1)
    68 all_course['听课时长'] = all_course['停留时间'].apply(lambda x: pd.to_datetime(x).hour * 3600 + pd.to_datetime(x).minute * 60 + int(pd.to_datetime(x).second))
    69 '''
    70 
    71 ''' #重命名
    72 all_course.rename(columns={'courseId': 'fuzhu', 'teacherName': '排课老师', 'courseDate': '日期'}, inplace=True)
    73 '''
    74 
    75 ''' #删除符合某些的行
    76 all_course.drop(index=(all_course.loc[(all_course['分享人263'] == 'test')].index))
    77 '''
    78 
    79 ''' #插入数据库
    80 df.to_sql(name='eightcorpus_intention', con=con, if_exists='append', index=False)
    81 name:数据表名称
    82 if_exists:添加方式,append为追加,replace替换,fail不做任何操作
    83 index:索引是否作为一列插入数据库中
    84 '''
    志同道合一起学习,欢迎加入QQ群:878749917
  • 相关阅读:
    Linux使用退格键时出现^H解决方法
    Linux centos7下php安装cphalcon扩展的方法
    Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
    在Vmware中安装CentOS7
    php stomp.dll 下载地址
    WIN7 64位系统安装JDK并配置环境变量
    SVN如何将版本库url访问地址中的https改为http
    两个日期这间的间隔天数
    vi/vim 命令速查手册
    判断PC或mobile设备
  • 原文地址:https://www.cnblogs.com/gujianjian/p/15293704.html
Copyright © 2011-2022 走看看