我是靠谱客的博主 爱笑滑板,最近开发中收集的这篇文章主要介绍Python玩转数据分析——数据准备(二维表转换一维表)数据分析总流程二维表转换一维表,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据分析总流程

明确调查目的
明确分析思路
数据准备
数据处理
数据分析
数据可视化
生成报告

二维表转换一维表

准备数据

假设现在有一个时空二维表,表示北京、上海、山东、广东分别在2006年、2007年和2008年的年GDP,数据如下:

地区200620072008
北京7861935310488
上海103661218913698
山东220772596631720
广东261603108435696

用Python导入数据

import pandas as pd
import numpy as np
df=pd.DataFrame(columns=['地区','2006','2007','2008'])
df['地区']=['北京','上海','山东','广东']
df['2006']=[7861,10366,22077,26160]
df['2007']=[9353,12189,25966,31084]
df['2008']=[10488,13698,31720,35696]

数据转换

用Python将时空二维表转换为一维表,代码如下:

def table_dimentrans(df):
    yn=len(df.columns)-1  #年份数
    an=len(df.index)      #地区数
    df_o=pd.DataFrame(columns=['地区','年份','X'])
    df_o['地区']=df['地区'].tolist()*yn
    year=df.columns.tolist()[1:]
    df_o['年份']=sorted(year*an)
    X=[]
    for i in year:
        X=X+df[i].tolist()
    df_o['X']=X
    df_o.sort_values(['地区','年份'],inplace=True)
    df_o.index=range(len(df_o))
    return df_o
table_dimentrans(df)

结果

转换成一维表,结果如下:

地区年份X
上海200610366
上海200712189
上海200813698
北京20067861
北京20079353
北京200810488
山东200622077
山东200725966
山东200831720
广东200626160
广东200731084
广东200835696

最后

以上就是爱笑滑板为你收集整理的Python玩转数据分析——数据准备(二维表转换一维表)数据分析总流程二维表转换一维表的全部内容,希望文章能够帮你解决Python玩转数据分析——数据准备(二维表转换一维表)数据分析总流程二维表转换一维表所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部