Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 电源BI-根据另一列中的值设置第1天_Powerbi_Dax - Fatal编程技术网

Powerbi 电源BI-根据另一列中的值设置第1天

Powerbi 电源BI-根据另一列中的值设置第1天,powerbi,dax,Powerbi,Dax,我在Power BI中有以下列的表格:国家、日期和事件。如果需要,我想用“开始日”添加度量或新列“开始日期”在“事件”列中的值大于0的第一天分配值“1”,并从此日期开始计算天数。在以下示例中,为2020年3月19日“事件”apears列中的英国国家值1和“开始日”列中的值1赋值。下一个日期2020年3月20日指定了值2,依此类推。在Power BI中实现这一点的最佳方法是什么 罗伯特 您需要创建一个额外的列,因为这是静态数据 您可以通过首先获取该国家/地区的开始日期,然后获取两个日期之间的日期差

我在Power BI中有以下列的表格:国家、日期和事件。如果需要,我想用“开始日”添加度量或新列“开始日期”在“事件”列中的值大于0的第一天分配值“1”,并从此日期开始计算天数。在以下示例中,为2020年3月19日“事件”apears列中的英国国家值1和“开始日”列中的值1赋值。下一个日期2020年3月20日指定了值2,依此类推。在Power BI中实现这一点的最佳方法是什么

罗伯特


您需要创建一个额外的列,因为这是静态数据

您可以通过首先获取该国家/地区的开始日期,然后获取两个日期之间的日期差来完成此操作

在CALCULATE函数中,我得到国家相等且事件=0的所有行。从这些行中,我得到了最大日期(firstD)。这是最重要的一步,因为我们现在可以使用DATEDIFF来计算天数

我再次使用了max函数,因为您希望在开始日期之前的行中有0

Start Day = 
var country = events[Country]
var firstD = CALCULATE(MAX(events[Date]);FILTER(events;events[Country] = country && events[event]=0))
return max(DATEDIFF(firstD;events[Date];DAY);0)
谢谢阿尔德特:)完美的解决方案。我只需要替换“;”带“,”