• python pandas 数据分析


    简介

    Python 2.0于2000年10月16日发布。Python 3.0于2008年12月3日发布,此版不完全兼容之前的Python源代码。目前Python的正式版已经更新到3.9版本,且官方不再维护2.0版本,因此建议初学者(包括已经在学习的)至少从3.6版本开始学习,之后的版本功能差异不会太大。

    在Python语言应用生态中,数据分析领域近年来十分热门。作为python中数据分析的一个非常基础的库,Pandas受到了广泛关注。Pandas可以将现实中来源多样的数据进行灵活处理和分析。简单来说,Pandas是Python这门编程语言中一个专门用来做数据分析的工具。

    Pandas由Wes McKinney于2008年开发。McKinney当时在纽约的一家金融服务机构工作,金融数据分析需要一个健壮和超快速的数据分析工具,于是他就开发出了Pandas。Pandas的命名来自计量经济学中的术语“面板数据”(Panel data)。面板数据是一种数据集的结构类型,具有横截面和时间序列两个维度。

    Pandas对数据的处理是为数据分析服务的,它所提供的各种数据处理方法、工具是基于数理统计学的,包含了日常应用中的众多数据分析方法。我们学习它不仅要掌控它的相应技术,还要从它的数据处理思路中学习数据分析的理论和方法。特别地,如果你想要成为数据分析师、数据产品经理、数据开发工程师等与数据相关的工作者,学习Pandas能让你深入数据理论和实践,更好地理解和应用数据。Pandas可以轻松应对白领们日常工作中的各种表格数据处理需求,还应用在金融、统计、数理研究、物理计算、社会科学、工程等领域。Pandas可以实现复杂的处理逻辑,这些往往是Excel等工具无法完成的,还可以自动化、批量化,免去我们在处理相同的大量数据时的重复工作。Pandas可以实现非常震撼的可视化效果,它对接众多令人赏心悦目的可视化库,可以实现动态数据交互效果。

    本文主要围绕etl环节进行描述,读者着重关注基础应用部分即可。

    二、安装

    1,安装python环境(自行下载安装包进行安装,建议安装3.6以及3.6以后版本),也可以通过miniconda安装。

    2,安装pandas

    pip install pandas或pip3 install pandas

    三、基础应用

    引入pandas:

    import pandas as pad
    1,数据抽取,创建DataFrame
    1.1 读取数组
    data=[{“key”:“1”,“value”:1},{“key”:“2”,“value”:2}]
    dataframe=pad.DataFrame(data)

    1.2 从DataFrame生成新DataFrame
    dataframe=pad.DataFrame(dataframe)
    1.3 读取csv,excel,json,html等文件生成DataFrame
    dataframe=pad.read_csv(“/Users/source/cloud/data/data/output.csv”)

    1.4 读取数据库生成DataFrame
    from sqlalchemy import create_engine

    engine = create_engine(‘mysql+pymysql://root:123456@localhost:3306/test’)

    dataframe = pd.read_sql_query(sql, engine)

    2,数据转换
    2.1 列重命名
    dataframe.rename(columns={“_id”:“cmdId”},inplace=True)

    2.2 删除列
    dataframe.drop(columns=[‘_id_vin’,‘model’,‘cmdId’],inplace=True)

    2.3 将dataframe空值设置为默认值
    dataframe=dataframe.fillna(0)

    2.4 转换列的数据类型
    dataframe[‘count_vin’] = (dataframe[‘count_vin’]).astype(int)

    2.5 获取dataframe中的某些列
    data_array=dataframe[:, 2].to_list()

    2.6 dataframe之间的merge(相当于sql中的inner join,left join,right join)
    result=pad.merge(result,connect_mqttlogs_sum,how=“left”,on=“vin”,suffixes=(‘_vin’, ‘_con’))

    2.7 groupby聚合函数
    dataframe.groupby([“vin”]).count()

    dataframe.groupby([“vin”]).sum()

    dataframe.groupby([“vin”]).mean()

    3,数据加载
    3.1 dataframe写入csv,excel,json,html等文件
    header = [‘vin’, ‘内部类型’,‘数量’, ‘连接数’, ‘断开连接数’,‘数量’, ‘应答数’]

    dataframe.to_csv(output_path,header=header)

    3.2 dataframe写入数据库(目前支持的数据库有(SQLite、MySQL、Postgres、Oracle、MS-SQL、SQLServer 和 Firebird)
    from sqlalchemy import create_engine

    engine = create_engine(‘mysql+pymysql://root:123456@localhost:3306/test’)

    dataframe.to_sql(‘mydf’, engine, index=True)

    四、高级应用

    窗口计算,移动窗口统计、日期移动等;

    灵活的可视化图表输出,支持所有的统计图形;

    为数据表格增加展示样式,提高数据识别效率。

  • 相关阅读:
    如何实现RabbitMQ、kafaka、rocketmq等消息队列的消息有序
    Java线程池基础
    java计算机毕业设计ssm宁夏源沣医药线上销售平台thd3v(附源码、数据库)
    携一站式全品类、全场景智慧出行解决方案,移远通信精彩亮相2023摩博会
    model字体图标
    会话管理
    Xfigure综合膳食营养粉美丽上线,大健康行业竞争呈现多元化
    ChatGPT AIGC 制作大屏可视化分析案例
    ElasticSearch集群shard均衡策略
    Crypto(6)攻防世界-babyrsa
  • 原文地址:https://blog.csdn.net/qq_26489043/article/details/127978512