pandas 存取数据小笔记

import pandas as pd 

1.   读取和保存 csv文件

#
df = pd.read_csv(read_file_path, header=0)  
# 其中read_file_path 为字符串,为读的文件所在路径
# 比如 "../cj_data/query_result.csv"
# header=0 意思是第一行包含字段名,可以通过df.columns 取到列名

#保存
df.to_csv(save_file_path)

 

2.  pandas如何根据字段进行过滤

df = df[                                              # [] 为读取操作符
           (df['course_id'] == course_id)         # == 等于
        & (df['member_id'] == str(member_id))    # & 来关联多个筛选条件,
          ]

3. python脚本运行日志保存

import logging

dt = time.strftime("%Y%m%d")
# 读取当前日期

logfile = project_folder + "log/log_" + str(dt) + ".txt"
logging.basicConfig(filename=logfile, filemode='a', level=logging.INFO)
# 设置日志级别,开始写入日志

logger = logging.getLogger(__name__)
logger.info('write_member_result ...')
logger.info(str(time.strftime("%Y-%m-%d %H:%M:%S")))
#日志内容全靠logger.info
#类似于print,但是可以保存日志文件,来帮助定位问题

4.  排序,生成序列号

    df = df.sort_values(by='lesson_start_time', ascending=True)
    # 函数是pandas的sort_values

    df['lesson_order'] = range(df.shape[0])
    # 生成序号是从0开始的

    df['lesson_order'] = [i+1 for i in df['lesson_order']]
    # 序列号+1,变成从1开始

 

5.  join操作

df3 = pd.merge(df, df2, how='left', on=['member_id', 'lesson_id'])
# 两个dataframe根据主键进行join

  

猜你喜欢

转载自www.cnblogs.com/skyEva/p/8968529.html
今日推荐