1、ALL函数(一共三个)

本文深入解析了DAX函数ALL、ALLEXCEPT和ALLSELECTED的语法与应用,通过实例展示了如何在数据筛选和统计中清除或保留特定列的筛选条件,帮助读者掌握更高级的数据分析技巧。

ALL语法:

ALL(表名) 或 ALL(列,列…)
返回:表

ALL(表名)
例子:
CALCULATE([总销售量],ALL(‘销售明细表’) )

ALL(列,列…)
例子:
CALCULATE([总销量],ALL(‘商品表’[商品名称]))
式中 ALL(‘商品表’[商品名称]))表示 清除筛选列要与初始筛选列一致
CALCULATE([总销量],ALL(‘商品表’[商品名称],‘商品表’[规格]))
注意****ALL所引用的列需在同一张表

Allexcept函数

Except中文翻译除……之外
所以该公式的含义是:除指定的某列之外,清除筛选条件
例子:
CALCULATE([销售总量],ALLEXCEPT(‘商品表’,‘商品表’[商品名称]))
式中ALLEXCEPT(‘商品表’,‘商品表’[商品名称]))商品名称这列之外,清除筛选条件

Allselected函数

语法: Allselected(表或列)
用途:统计直观合计,即清除所显示的筛选条件
在实践中,我们可能不会经常用到这个函数,但是你真的有需求时,没有可以代替它的函数。

### 三个函数卷积的计算方法 对于三个函数 \(f_1[n]\), \(f_2[n]\), \(f_3[n]\),其卷积可以示为: \[ (f_1 * f_2 * f_3)[n] = ((f_1 * f_2) * f_3)[n] \] 这意味着可以通过分步的方式先计算前两个函数的卷积,再将其结果与第三个函数进行卷积。这种方法基于卷积运算的结合律[^1]。 #### 数学达式 假设已知两函数的卷积定义如下: \[ (f_1 * f_2)[n] = \sum_{k=-\infty}^{\infty} f_1[k] f_2[n-k] \] 那么三函数卷积的具体过程可分解为以下形式: 1. 首次卷积:\( (f_1 * f_2)[n] = \sum_{k=-\infty}^\infty f_1[k] f_2[n-k] \) 2. 将首次卷积的结果作为新输入,再次执行卷积: \[ ((f_1 * f_2) * f_3)[n] = \sum_{m=-\infty}^\infty (f_1 * f_2)[m] f_3[n-m] \] 最终得到完整的三函数卷积结果。 #### 实现方式 以下是通过 MATLAB 脚本实现三个离散信号卷积的方法: ```matlab clc; clear; close all; % 定义第一个信号 f1[n] n_f1 = -5:45; f1 = (0.8.^n_f1); % 定义第二个信号 f2[n] n_f2 = -5:45; f2 = (0.9.^n_f2); % 定义第三个信号 f3[n] n_f3 = -5:45; f3 = (0.7.^n_f3); % 计算两次卷积 conv1 = conv(f1, f2); nf_conv1_start = min(n_f1) + min(n_f2); nf_conv1_end = max(n_f1) + max(n_f2); nf_conv1 = nf_conv1_start : nf_conv1_end; conv_final = conv(conv1, f3); nf_final_start = nf_conv1_start + min(n_f3); nf_final_end = nf_conv1_end + max(n_f3); nf_final = nf_final_start : nf_final_end; % 绘图展示 figure; subplot(3,1,1); stem(n_f1, f1, 'filled'); title('Signal f1[n]'); xlabel('n'); subplot(3,1,2); stem(nf_conv1, conv1, 'filled'); title('(f1 * f2)[n]'); xlabel('n'); subplot(3,1,3); stem(nf_final, conv_final, 'filled'); title('(f1 * f2 * f3)[n]'); xlabel('n'); xlim([min(nf_final)-10, max(nf_final)+10]); ``` 此代码实现了三个指数衰减信号之间的卷积,并展示了每一步的结果图形化输出。 --- #### 性质说明 卷积具有交换性结合性,因此无论按照何种顺序组合这三个函数,最终结果都是一致的。即: \[ ((f_1 * f_2) * f_3)[n] = (f_1 * (f_2 * f_3))[n] \] 这种特性使得我们可以自由选择最方便的中间步骤来简化计算或优化算法性能[^1]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值