Python 笔记 #17# Pandas: Merge

10 Minutes to pandas

Concat

df = pd.DataFrame(np.random.randn(10, 4))
print(df)
# break it into pieces
pieces = [df[:3], df[3:7], df[7:]]
print(pd.concat(pieces))
#           0         1         2         3
# 0  0.879526 -1.417311 -1.309299  0.287933
# 1 -1.194092  1.237536 -0.375177 -0.622846
# 2  1.449524  1.732103  1.866323  0.327194
# 3 -0.028595  1.047751  0.629286 -0.611354
# 4 -1.237406  0.878287  1.407587 -1.637072
# 5  0.536248  1.172208  0.405543  0.245162
# 6  0.166374  1.185840  0.132388 -0.832135
# 7  0.750722 -1.188307  1.306327  1.564907
# 8 -0.755132 -1.538270 -0.173119  1.341313
# 9 -0.572171  1.808220  0.688190 -0.672612
#           0         1         2         3
# 0  0.879526 -1.417311 -1.309299  0.287933
# 1 -1.194092  1.237536 -0.375177 -0.622846
# 2  1.449524  1.732103  1.866323  0.327194
# 3 -0.028595  1.047751  0.629286 -0.611354
# 4 -1.237406  0.878287  1.407587 -1.637072
# 5  0.536248  1.172208  0.405543  0.245162
# 6  0.166374  1.185840  0.132388 -0.832135
# 7  0.750722 -1.188307  1.306327  1.564907
# 8 -0.755132 -1.538270 -0.173119  1.341313
# 9 -0.572171  1.808220  0.688190 -0.672612

Join

类似 sql 里的 join (联表)

left = pd.DataFrame({‘key‘: [‘foo‘, ‘foo‘], ‘lval‘: [1, 2]})
right = pd.DataFrame({‘key‘: [‘foo‘, ‘foo‘], ‘rval‘: [4, 5]})
print(left)
print(right)
print(pd.merge(left, right, on=‘key‘))
#    key  lval
# 0  foo     1
# 1  foo     2
#    key  rval
# 0  foo     4
# 1  foo     5
#    key  lval  rval
# 0  foo     1     4
# 1  foo     1     5
# 2  foo     2     4
# 3  foo     2     5

Merge

df = pd.DataFrame(np.random.randn(8, 4), columns=[‘A‘,‘B‘,‘C‘,‘D‘])
print(df)
s = df.iloc[3]
print(s)
df.append(s, ignore_index=True)
print(df)
#           A         B         C         D
# 0 -1.744799 -0.745689 -0.066827 -0.993191
# 1  0.843984  0.902578  0.845040  1.336861
# 2  0.865214  1.151313  0.277192 -0.711557
# 3  0.917065 -0.948935  0.110977  0.047466
# 4 -1.309586  0.539592  1.956684 -0.117199
# 5 -0.431144  0.884499 -0.828626 -0.506894
# 6 -1.263993 -0.826366  1.426688 -0.434647
# 7 -0.567870 -0.086037  2.166162 -0.396294
# /
# A    0.917065
# B   -0.948935
# C    0.110977
# D    0.047466
# Name: 3, dtype: float64
# /
#           A         B         C         D
# 0 -1.744799 -0.745689 -0.066827 -0.993191
# 1  0.843984  0.902578  0.845040  1.336861
# 2  0.865214  1.151313  0.277192 -0.711557
# 3  0.917065 -0.948935  0.110977  0.047466
# 4 -1.309586  0.539592  1.956684 -0.117199
# 5 -0.431144  0.884499 -0.828626 -0.506894
# 6 -1.263993 -0.826366  1.426688 -0.434647
# 7 -0.567870 -0.086037  2.166162 -0.396294

原文地址:https://www.cnblogs.com/xkxf/p/8367206.html

时间: 2024-11-07 08:14:29

Python 笔记 #17# Pandas: Merge的相关文章

Python数据分析库pandas ------ merge、concatenation 、pd.concat合并与拼接

对于合并操作,熟悉SQL的读者可以将其理解为JOIN操作,它使用一个或多个键把多行数据 结合在一起. 事实上,跟关系型数据库打交道的开发人员通常使用SQL的JOIN查询,用几个表共有的引用 值(键)从不同 的表获取数据.以这些键为基础,我们能够获取到列表形式的新数据,这些数据是对几个表中的数据进行组合 得到的.pandas库中这类操作叫作合并,执行合并操作的函数为 merge(). 1 import pandas as pd 2 import numpy as np 3 4 frame1 = p

Python 笔记 #13# Pandas: Viewing Data

感觉很详细:数据分析:pandas 基础 import pandas as pd import numpy as np import matplotlib.pyplot as plt dates = pd.date_range('20180116', periods=3) # 创建 16 17 18 等六个日期 df = pd.DataFrame(np.random.randn(3,4), index=dates, columns=list('ABCD')) # 这是二维的,类似于一个表! #

Python 笔记 #14# Pandas: Selection

import pandas as pd import numpy as np import matplotlib.pyplot as plt dates = pd.date_range('20180116', periods=3) # 创建 16 17 18 等六个日期 df = pd.DataFrame(np.random.randn(3,4), index=dates, columns=list('ABCD')) # 这是二维的,类似于一个 # Getting # print(df['A']

Python 笔记 #18# Pandas: Grouping

10 Minutes to pandas 引 By “group by” we are referring to a process involving one or more of the following steps Splitting the data into groups based on some criteria Applying a function to each group independently Combining the results into a data st

20180426学习python笔记(pandas使用)

原文地址:https://www.cnblogs.com/beijingjiaotongdaxue/p/8955138.html

python基础教程_学习笔记17:标准库:一些最爱——time

标准库:一些最爱 time time模块所包含的函数能够实现以下功能: 获取当前时间.操作系统时间和日期.从字符串读取时间以及格式化时间为字符串. 日期可以用实数(从"新纪元"的1月1日0点开始计算到现在的秒数,新纪元是一个与平台相关的年份,对unix来说是1970年),或者是包含有9个整数的元组. 日期元组的字段含义 如元组: (2008,1,21,12,2,56,0,21,0) 表示2008年1月21日12时2分56秒,星期一,且是当年的第21天(无夏令时). 索引 字段 值 0

Python数据分析之pandas学习

Python中的pandas模块进行数据分析. 接下来pandas介绍中将学习到如下8块内容:1.数据结构简介:DataFrame和Series2.数据索引index3.利用pandas查询数据4.利用pandas的DataFrames进行统计分析5.利用pandas实现SQL操作6.利用pandas进行缺失值的处理7.利用pandas实现Excel的数据透视表功能8.多层索引的使用 一.数据结构介绍 在pandas中有两类非常重要的数据结构,即序列Series和数据框DataFrame.Ser

玩蛇(Python)笔记之基础Part3

玩蛇(Python)笔记之基础Part1 一.集合 1.set 无序,不重复序列 {}创建,直接写元素 2.set功能 __init__()构造方法,,使用强制转换就会调用此方法 1 set1 = {'year', 'jiujiujiu'} 2 print(type(set1)) 3 # 创建集合 4 s = set() # 创建空集合 5 li = [11, 22, 11, 22] 6 s = set(li) set 3.集合的基本操作 1 # 操作集合 2 s1 = set() 3 s1.a

Python笔记(四)

在<Python笔记(三)>中,我记录关于Python中序列问题的知识.个人觉得确实比Java中的集合框架简单.之前也说了,Python是一种高级面向对象的语言,它的每一个变量都称为对象.今天我接触了面向对象的编程.下面是这篇博客的目录: 1.类与对象 2.输入输出 3.异常 类与对象: 我们都知道面向对象的语言具备四个特性:抽象,继承,封装,多态.Java,C++是这样,Python也不例外.在Python中,我们定义一个类,使用关键字class.形式如下:class classname:.