利用python进行数据分析之——数据规整化2(ETL)

本文介绍了如何使用Python进行数据规整化的ETL过程,特别是数据的轴向连接操作。通过Numpy的concatenation函数,演示了在不同axis上的连接,并讨论了join参数的影响。同时,探讨了层次化索引的创建,以及如何处理无关的行索引。内容包括Series和DataFrame的连接、合并策略以及如何通过keys参数创建列头。
摘要由CSDN通过智能技术生成

待我学有所成,结发与蕊可好。@夏瑾墨 by Jooey

3.数据的轴向连接
Nunpy 有一个用于合并串联原始Numpy数组的concatenation函数

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

arr=np.arange(12).reshape((3,4))
print (arr)
print (np.concatenate([arr,arr],axis=1))

输出结果:

[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
[[ 0  1  2  3  0  1  2  3]
 [ 4  5  6  7  4  5  6  7]
 [ 8  9 10 11  8  9 10 11]]

假设有三个没有重叠索引的Series

s1=Series([0,1],index=['a','b'])
s2=Series([2,3,4],index=['c','d','e'])
s3=Series([5,6],index=['f','g'])
print (pd.concat([s1,s2,s3]))

输出结果:

a    0
b    1
c    2
d    3
e    4
f    5
g    6
dtype: int64

默认情况下,concat是在axis=0上工作的,最终产生一个新的Series。如果传入axis=1,则结果就会变成一个DataFrame(axis=1是列)

print (pd.concat([s1,s2,s3],axis=1))

输出结果:

     0    1    2
a  0.0  NaN  NaN
b  1.0  NaN  NaN
c  NaN  2.0  NaN
d  NaN  3.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值