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
6. dataframe 某个字段的类型转化
df['col2'] = df['col2'].astype('float64')
print '-----------'
print df.dtypes