Power BI学习(数据可视化)

news2024/11/25 6:22:30

另一个也可以的工具是:Tableau

还有一个是:神策,主要是用于互联网的app的数据埋点

数据分析的过程:

数据源--数据清洗(power query)-构建指标 新建度量值(power pivot)-可视化(power view)-报表完成


我使用的PowerBI版本

一 获取数据

1.连接MySQL数据库

如果要连接MySQL,那么在MySQL安装路径下要安装mysql-connect-net,(我是本地电脑,如果数据库在服务端,那么需要放在服务端)下载地址MySQL :: Download MySQL Connector/NET (Archived Versions)

双击安装后

powerBI主页--获取数据--更多--数据库--MySQL数据库

 

输入数据库和用户后,就可以获取数据库的数据了

2.导入execl数据

导入后,可以查看表之间的关系

二 操作数据(数据清洗)

主页--转换数据--转换数据

打开的是Power Query编辑器

可以编辑数据的类型,行列转换,增删列,提取,分组等操作

设置完即可“关闭并应用”

三 数据可视化

下面的新建列操作是数据建模的一部分:

在数据页面,新建一个某几列数据合在一起计算的列

选择表,右键--新建列--输入公式--确认

1. 地图

比如:查看门店分布及销售情况

1)插入--新建视觉对象

2)对象可以拉到合适的位置。然后,选择对象 --选择“可视化”的“地图”

3)将数据表中的门店的国家字段拉入地图中

 把销售额也拉入地图中,最后效果如下:

然后点击上图的“焦点模式”模式 

2.着色地图

1.新建视觉对象

2.选择“着色地图”

3)拉入国家和销售额

3. 柱形图、饼状图

4. 矩阵(透视表)

不同产品在不同国家的销售额 

设置视觉对象格式,可以优化透视表

美化后效果:(若设置字体大小,搜索“大小”,然后进行设置)

5.词云

获取更多视觉对象--word cloud

根据自己的需要进行优化

6.雷达图

获取更多视觉对象--Radar Chart

四 数据建模

(1)管理关系

可以删掉默认的关系,新建自己的关系

(2)新建表

如果要新建表,不要直接用“新建表”的功能,而是通过空白查询的方式(主页--获取数据--空白查询--输入数据--添加表名--确定)

以下是新建一张名称为“度量值表”的表(为了方便下面第(4)步的操作,所以取名“度量值表”,也可以根据自己的需要命名)

 创建完记得“关闭并应用”

然后,在数据中可查看到新建的表 

(3)新建列

最好是用新建度量值,而不用新建列(列会占内存,度量值不会

(4)新建度量值

  • 常用函数

a.迭代函数

函数作用
    SUMX('表',算术表达式)    求和
   AVERAGE('表',算术表达式)    平均值
    AVERAGEX('表',算术表达式)    算术平均值
    MAXX('表',算术表达式)    最大值
    MINX('表’,算术表达式)    最小值
    COUNTX('表',算术表达式)    记录数
COUNTAX函数('表',算术表达式)    计算列中单元格不为空的数目
    PRODUCTX('表',算术表达式)        PRODUCTX('表',算术表达式)   

b. 计算函数

FILTER 的表,必须是维度表,唯一表。

Filter 常用方法:
1.搭配Calculate

Calculate(表达式(度量值),Filter('表名',筛选条件))

在Calculate函数中的直接筛选条件里,我们只能输入:
‘表'[列]= 固定值    或‘表列1<>固定值    
‘表'[列]>= 固定值或‘表’[列]<=固定值‘表[列]>固定值或‘表[列]<固定值

但是遇到如下情况,就要使用Filter函数

[列]=[度量值]、[列]=公式、[列]=[列]
[度量值]=[度量值]、[度量值]=公式、[度量值]=固定值

  • 运用

<1> 新建度量表

为了统一管理度量值,可以新建一张“度量值表”,根据上面(2)操作中的方法

比如要计算store_cost的平均值,那么就新建一个度量值(表工具--新建度量值)。

<2>  使用AVERAGE函数(平均值)

点击“度量值表”,右键“新建度量值”

 

store_cost平均值 = AVERAGE('mayfood sales_fact_1998'[store_cost])

注意:这时候查看度量值时,页面不会有任何的显示

 在报表试图中,新建视觉对象,选择“表格”,拉入度量值,就可以看出结果

增加门店Id维度

<3>  使用Calculate函数(条件语句)

比如筛选store_cost大于其平均值的数据,并对其进行平均值计算

同样使用度量值

步骤一:筛选store_cost大于其平均值的数据

Filter('表名',筛选条件)

FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost]))

步骤二: 使用Calculate函数

Calculate(表达式(度量值),Filter('表名',筛选条件))

store_cost大于平均值 = CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])))

增加城市维度

更多筛选条件

A.

多个筛选条件 = CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])),'mayfood sales_fact_1998'[store_id] = "1")

 B.

CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])),'mayfood sales_fact_1998'[store_id] in {1,12})

 如果in{}里面是文本,那么应该加双引号" "

 

C. 如果是排除某几个,则用not

 

 

(5)分组

 

结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1532582.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SecureCRT:高效安全的远程连接工具

SecureCRT是一款功能强大的终端仿真工具&#xff0c;主要用于连接和运行包括Windows、UNIX和VMS在内的远程系统。它支持多种协议&#xff0c;如SSH1、SSH2、Telnet、SFTP、Rlogin、Serial、SCP等&#xff0c;确保用户与目标设备之间的通信安全&#xff0c;并防止网络攻击和窥探…

git如何在某个commitId的状态提交到一个分支

有些时候&#xff0c;我们在使用子仓库&#xff0c;或者其他情况&#xff0c;会有一个状态是当前的git仓库是在一个commitId上&#xff0c;而没有在一个分支上&#xff1a; 这时如果想要把基于这个commitId创建一个分支&#xff0c;可以使用下面这个命令&#xff1a; git push…

ReaLTaiizor开源.NET winform控件库学习使用

一、ReaLTaiizor项目介绍 1.1 介绍及地址 基于MIT license开源、免费、美观的.NET WinForm UI控件库&#xff1a;ReaLTaiizor ReaLTaiizor是一个开源免费的.NET WinForms控件库&#xff0c;它提供了广泛的组件和丰富的主题选项&#xff08;用户友好、注重设计&#xff09;&am…

ping 通ip,ping 不通域名

在linux 系统中&#xff0c;ping 通ip,ping 不通对应的域名时&#xff0c;可直接修改系统配置文件 vi /etc/hosts 加入 ip 域名

数据分析的具体流程

1.导入 表格导入数据时要注意数据的格式问题非表格导入 可以先将文档放入word中 将换行符&#xff08;^p&#xff09;替换为|||&#xff0c;选择特殊格式中的段落标记 进行全部替换 以每一列最后的数据/平&#xff0c;作为换行的标志 将所整理的信息导入excel,对数据进行分列 选…

海外云手机如何帮助亚马逊引流?

随着全球化的推进&#xff0c;出海企业和B2B外贸企业越来越注重海外市场的开拓&#xff0c;这已成为企业争夺市场份额的重要策略。本文将重点探讨海外云手机在优化亚马逊店铺引流方面的作用和优势。 海外云手机是一种在云端运行的虚拟手机&#xff0c;能够在单一芯片上多开几个…

简单记录一次帮维修手机经历(Vivo x9)

简介 手边有一台朋友亲戚之前坏掉的Vivo X9手机&#xff0c; 一直说要我帮忙修理一下&#xff0c; 我一直是拒绝的&#xff0c; 因为搞程序的不等于维修的&#xff08;会电脑不等于维修电器&#xff09;&#xff0c;不知道这种思路如何根深蒂固的&#xff0c;不过好吧&#xff…

uniapp、vue2.6、H5,利用腾讯TRTC,快速跑通1v1视频功能

多人视频聊天室搭建&#xff0c;官网已有相关demo和案例&#xff0c;需要快速搭建多人聊天室直接进入以下网站&#xff1a; 实时音视频 Web & H5 (Vue2/Vue3)-视频通话&#xff08;含 UI&#xff09;-文档中心-腾讯云说明&#xff1a;https://cloud.tencent.com/document/…

区块链革命:探索 Web3 的全球影响

引言 自比特币的诞生以来&#xff0c;区块链技术已经成为全球范围内备受瞩目的创新之一。其去中心化、不可篡改、透明的特性不仅使其成为数字货币领域的核心技术&#xff0c;还在金融、供应链管理、智能合约等领域展现出了巨大的应用潜力。随着区块链技术的不断发展&#xff0…

【运维笔记】VM 记录一次centos虚拟机和宿主机之间ping不通的问题

问题描述 环境&#xff1a;centos7&#xff0c;静态ipVM版本&#xff1a;VMware Workstation 16 pro&#xff0c;网络为nat映射模式问题&#xff1a; 一开始&#xff0c;虚拟机可以ping通宿主机&#xff0c;也可以ping通&#xff0c;也可以ping通外网&#xff08;如 ping www.…

【动态三维重建】Deformable 3D Gaussians 可变形3D GS用于单目动态场景重建(CVPR 2024)

主页&#xff1a;https://ingra14m.github.io/Deformable-Gaussians/ 代码&#xff1a;https://github.com/ingra14m/Deformable-3D-Gaussians 论文&#xff1a;https://arxiv.org/abs/2309.13101 文章目录 摘要一、前言二、相关工作2.1 动态场景的神经渲染2.2 神经渲染加速 三…

Gradio官方文档

文章目录 构建您的第一个demo分享您的demo进度条受密码保护的应用程序The Interface class&#xff08;接口类&#xff09;Components Attributes&#xff08;组件属性&#xff09;多个输入和输出组件图像示例嵌套列表描述性内容手风琴中的附加输入The 4 Kinds of Gradio Inter…

NVM使用教程

文章目录 ⭐️写在前面的话⭐️1、卸载已经安装的node2、卸载nvm3、安装nvm4、配置路径以及下载源5、使用nvm下载node6、nvm常用命令7、全局安装npm、cnpm8、使用淘宝镜像cnpm9、配置全局的node仓库&#x1f680; 先看后赞&#xff0c;养成习惯&#xff01;&#x1f680;&#…

iostream、fstream、sstream、string、vector、unordered_map、stack

iostream 用于输入输出操作&#xff0c;包含了处理标准输入输出流的功能&#xff08;例如&#xff0c;cin, cout, cerr等&#xff09;。 #include <iostream>int main() {int number;std::cout << "Enter a number: ";std::cin >> number;std::…

python数据分析和可视化【3】体检数据分析和小费数据分析

文章目录 体检数据分析小费数据分析 体检数据分析 要求&#xff1a; &#xff08;1&#xff09;读取testdata文件&#xff0c;利用agg函数统计数据中‘淋巴细胞计数’的和与均值、‘白细胞计数’的和与均值。 &#xff08;2&#xff09;统计不同性别人群的血小板计数 &#xf…

思维题一(C++ 题目 代码 注解)

目录 题目一&#xff1a; 题目二&#xff1a; 题目三&#xff1a; 题目四&#xff1a; 题目一&#xff1a; #include<iostream> #include<cmath> using namespace std; int main() {int n;cin>>n;int a[100];//装因子int p 0;//递增数组序号for(int i2;i&l…

力扣389周赛复盘

字符串及其反转中是否存在同一子字符串 class Solution {public boolean isSubstringPresent(String s) {StringBuilder sb new StringBuilder(s);String reverse sb.reverse().toString(); for (int i 0; i < s.length() - 2; i) { // 修改循环终止条件为 <&#xf…

我的保研材料全部损坏了!这个压缩包文件格式未知或数据已经被损坏不可预料的压缩文件末端

求助各位友友&#xff0c;我的保研材料全部没了&#xff01; 之前为了清理D盘&#xff0c;把之前保研期间准备的几个G的材料全部压缩放在了U盘&#xff0c;但是现在却损坏打不开了&#xff0c;之前为了省事也没有添加过“恢复记录”&#xff01;&#xff01;&#xff01; 先声…

【重温设计模式】策略模式及其Java示例

策略模式的基本概念 策略模式&#xff0c;是一种常见的行为设计模式&#xff0c;主要用于处理程序中的一些相同行为&#xff0c;但具有不同实现方式的问题。在策略模式中&#xff0c;我们将每一种行为封装为一个个策略类&#xff0c;通过策略类的组合和切换&#xff0c;可以灵…

ubuntu20.04安装Pycharm

下载pycharm安装包 https://www.jetbrains.com/pycharm/download/#sectionlinux 使用社区版点击download 下载好的pycharm如图所示&#xff0c;右键解压&#xff1a; 打开终端&#xff0c;输入cd命令&#xff0c;进入刚刚解压文件夹下的bin文件夹&#xff0c;命令行是cd 文…