前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大数据ETL实践探索 ---- 使用python 进行 快速EDA综合可视化

大数据ETL实践探索 ---- 使用python 进行 快速EDA综合可视化

作者头像
流川疯
发布2020-04-15 18:10:24
1.1K0
发布2020-04-15 18:10:24
举报


可视化处理的前置处理

数据清洗

对于可视化的过程,拿到一份数据,我们首先要做的是进行数据清洗。我在这篇博文:数据清洗的目的,方法

介绍了数据清洗的一个通用步骤。

针对这个通用流程,我们 准备了一份医疗领域 的通用 样例数据,准备进行分析探查以及基本的可视化工作。

es 目前支持sql

使用pandas 对数据进行处理

我在系列博文中:大数据ETL实践探索(5)---- 大数据ETL利器之 pandas 介绍了pandas 的部分使用。

通过文件加载,我们首先需要将文件中的数据转化为pandas 的dataframe ,


数据存储

数据入库

postgreSQL 安装

最近单位在研究开源的数据库,说实话他的官方文档真是烂,中文的文档版本滞后,下载个CentOS 7 内核版本还要找半天:Linux downloads (Red Hat family)

代码语言:javascript
复制
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

yum install postgresql12

yum install postgresql12-server
代码语言:javascript
复制
# postgresql-12-setup initdb 命令不支持后跟参数设置编码,但是查官网init 又可以,很迷惑
/usr/pgsql-12/bin/postgresql-12-setup initdb 

systemctl enable postgresql-12
systemctl start postgresql-12

之前在一些虚机上安装时候发现,如果没有在开始时候指定字符集,那么后来修改会比较麻烦:

https://tutorials.technology/tutorials/How-to-change-postgresql-database-encoding-to-UTF8-from-SQL_ASCII.html

强烈建议阅读下文:字符集修改:字符集修改

其中提到,只要locale字符集正确,postgresql 默认字符集就ok ,

  • 修改配置文件

修改登录及监听

修改配置文件(非常关键),操作如下:

代码语言:javascript
复制
cd /var/lib/pgsql/data

首先,修改postgresql.conf,将 listen_addresses 这一行的ip地址改为  listen_addresses ='*',代表监听所有端口,如果不改后面会出错。

其次,修改pg_hba.conf,将indent全部改为trust; 

另外,pg_hba.conf的#IPv4 local connections 下添加一列:

host    all             all             0.0.0.0/0              md5      //这是由于每台远程机器的ip都不统一,pgadmin登录的时候ip不一致将无法连接数据

之后重启服务。

修改时区

代码语言:javascript
复制
# 查找配置文件目录
find / -name postgresql.conf

vi /var/lib/pgsql/data/postgresql.conf
  • 数据入库
代码语言:javascript
复制
# coding:utf-8

from sqlalchemy import create_engine

class connet_databases:
    def __init__(self):
        '''
        # 初始化数据库连接,使用pymysql模块
        # MySQL的用户:root, 密码:147369, 端口:3306,数据库:mydb
        '''
        
        _host = '39.108.131.88'
        _port = 3306
        _databases = 'san_jin_sq'  # 'produce' #

        _username = 'wuzaipei'
        _password = 'wuzaipei'

        self._connect = r'mysql+pymysql://{username}:{password}@{host}:{port}/{databases}'.format(
            username=_username,
            password=_password,
            host=_host,
            port=_port,
            databases=_databases)

engine = create_engine(connet_databases()._connect, echo=True)

数据入ES


非结构化数据可视化

非结构化数据的可视化,我们可以使用elastic search 配套的kibana 进行可视化 的绘制。

结构化数据可视化

cubes

superset

superset 官网

技术调研----BI工具对比及Surperset 之 docker安装与可视化

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-04-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 可视化处理的前置处理
    • 数据清洗
    • 使用pandas 对数据进行处理
    • 数据存储
      • 数据入库
        • postgreSQL 安装
      • 数据入ES
      • 非结构化数据可视化
      • 结构化数据可视化
        • cubes
          • superset
          相关产品与服务
          云数据库 MySQL
          腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档