0
点赞
收藏
分享

微信扫一扫

zip、dataframe、open、concat、merge、dataframe的列名重新排序用法总结

王栩的文字 2022-04-15 阅读 67
python

zip

#python2.0+的输出实例
a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,b)     # 打包为元组的列表
[(1, 4), (2, 5), (3, 6)]
zip(a,c)              # 元素个数与最短的列表一致
[(1, 4), (2, 5), (3, 6)]
zip(*zipped)          # 与 zip 相反,*zipped 可理解为解压,返回二维矩阵式
[(1, 2, 3), (4, 5, 6)]

#python3.0+的输出实例
a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,b)     # 返回一个对象
 zipped
<zip object at 0x103abc288>

#可以将zip对象转化为list并打印输出
list(zipped)  # list() 转换为列表
[(1, 4), (2, 5), (3, 6)]

#利用zip函数拼接为dataframe
data = pd.DataFrame(list(zip(province,result))  
data.columns = ['州市','行政区划名称']

提示:[参考链接1](https://www.runoob.com/python/python-func-zip.html)和[参考链接2 ](http://c.biancheng.net/view/2237.html)


DataFrame

import pandas as pd
#列表
data = [{'a': 1, 'b': 2},{'a': 5, 'b': 10, 'c': 20}]
df = pd.DataFrame(data)
print (df)
   a   b     c
0  1   2   NaN
1  5  10  20.0

#字典
data = {
  "calories": [420, 380, 390],
  "duration": [50, 40, 45]
}
# 数据载入到 DataFrame 对象
df = pd.DataFrame(data)


open 读写本地文件

with open(filePath, mode,encoding) as fp:
    fp.write(data)

concat

pd.concat([df1,df2],axis = 1) #实现横向拼接
pd.concat([df1,df2],axis = 0) #实现纵向拼接,默认

merge

pd.merge(df1,df2,on = 'key',how = 'left') #按照key字段对df1和df2两个表进行左连接,左表为主表
pd.merge(df1,df2,on = 'key',how = 'right') #按照key字段对df1和df2两个表进行右连接,右表为主表
pd.merge(df1,df2,on = 'key',how = 'inner') #按照key字段对df1和df2两个表进行内连接,默认连接方式

参考连接


更改DataFrame的列名排列顺序

order = ['州市','区县' ,'乡(镇、街道)', '行政区划名称']
final_data = final_data[order]

对昨晚用到的函数简单总结一下下,这些函数总是用不太熟练,下次用到可以直接查阅!!
open函数的使用还需要增强!!下次继续补充完整吧!!一次写入多个字段?

举报

相关推荐

0 条评论