python:pandas合并csv文件的方法(图书数据集成)
作者:kevinelstri 发布时间:2021-06-22 09:34:40
标签:python,pandas,csv,合并,图书
数据集成:将不同表的数据通过主键进行连接起来,方便对数据进行整体的分析。
两张表:ReaderInformation.csv,ReaderRentRecode.csv
ReaderInformation.csv:
ReaderRentRecode.csv:
pandas读取csv文件,并进行csv文件合并处理:
# -*- coding:utf-8 -*-
import csv as csv
import numpy as np
# -------------
# csv读取表格数据
# -------------
'''
csv_file_object = csv.reader(codecs.open('ReaderRentRecode.csv', 'rb'))
header = csv_file_object.next()
print header
print type(header)
print header[1]
data = []
for row in csv_file_object:
data.append(row)
data = np.array(data)
print data[0::, 0]
'''
# -------------
# pandas读取表格数据
# -------------
import pandas as pd
df = pd.read_csv('ReaderRentRecode.csv') # 读者借阅信息表
'''
print df.head()
print '----------------'
print df[['读者证号', '读者姓名', '书名', '中图法分类号']] # 选取其中的四列
print '------------------------------------------------------------------'
'''
dd = pd.read_csv('ReaderInformation.csv')
'''
print dd.head()
print '----------------'
print dd[['读者证号', '读者性别', '读者单位', '读者类别']]
print '------------------------------------------------------------------'
'''
data = pd.merge(df, dd, on=['读者证号', '读者姓名'], how='left') # pandas csv表左连接
data = data[['读者证号', '读者姓名', '读者性别', '书名', '中图法分类号', '读者单位', '读者类别']]
print data
print '------------------------------------------------------------------'
# -------------
# pandas写入表格数据
# -------------
data.to_csv(r'data.csv', encoding='gbk')
合并后的csv文件:data.csv
通过使用pandas的函数merge来进行两个表的左连接,最后得到相应的data.csv文件。
来源:https://blog.csdn.net/kevinelstri/article/details/55049179


猜你喜欢
- 今天花了一些时间搭了一个博客系统,虽然并没有相关于界面的美化,但是发布是没问题的。开发环境操作系统:windows 7 64位 Django
- 我们有时请求服务器时,无论get或post请求,会出现403错误,这是因为服务器拒绝了你的访问,这时我们可以通过模拟浏览器的头部信息进行访问
- 在 golang 语言中,实现io的读与写,只要实现了如下的读写接口即可:// go 1.19/src/io/io.go
- 下面从以下四种方案分析各自的优缺点。方案一:SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1;
- 话不多说,附上源码,仅供大家参考<!DOCTYPE html><html xmlns="http://www.w
- 前言:PyPDF2是一个纯Python的开源库,能够分割或合并PDF文件,也可以裁剪或转换PDF文件中的页面。我们还可以使用PyPDF2查看
- 问:如何自己制作验证码的head.fix和body.fix文件答:1 图象绘制完成后,将文件存为24位位图格式的BMP图象文件。 2 去除前
- 成品效果 <body> <div id="game" style="p
- 本文实例讲述了JavaScript数据库TaffyDB用法。分享给大家供大家参考。具体如下:TaffyDB 是一个免费开源的 JavaScr
- 今天使用ab(apacheBench)测试了一下beego的性能。3Kbytes动态文件,在i3上可以达到每秒1W次响应的性能。但是在测试静
- 新建图像文件后选Channels面板,新建Alpha1通道:输入文字; &nbs
- 在很多网站都有这样的功能,当点击一个全选按钮之后,所有的复选框都会被选中,再点击之后会取消全选,功能非常的人性化,可以省却很多人力,下面就简
- 跨浏览器方法function getStyle(elem, cssprop, cssprop2){ if(elem.currentStyle
- 代码如下所示:import osimport requestsimport datetimefrom Crypto.Cipher impor
- 深入认识Python内建类型——dict注:本篇是根据教程学习记录的笔记,部分内容与教程是相同的,因
- goland如果当前project用了版本控制器,其下面新建的所有的项目默认都是加入到版本控制里面,所以项目名称和文件都是红色的。解决办法:
- 阅读上一篇:垂直栅格与渐进式行距(上) 新问题来也匆匆,去也“冲冲”。距上次发布垂直栅格与渐进式行距(上)发布,已经不知不觉过去了
- 背景在实际项目实施中,会编写很多在服务器执行的作业脚本。程序中凡是涉及到数据库链接、操作系统用户链接、IP地址、主机名称的内容都是敏感信息。
- 1、当前日期select DATE_SUB(curdate(),INTERVAL 0 DAY) ;2、明天日期select DATE_SUB
- 我们写程序的目的就是使它在任何情况下都可以稳定工作。一个运行的很快但是结果错误的程序并没有任何用处。在程序开发和优化的过程中,我们必须考虑代