Forum Discussion
Error message in Power Query: NameError: name 'dataset' is not defined
Hi,
I have a very simple static demo table
| Category | Amount |
| A | 1 |
| B | 2 |
That table is my source.
I am trying to add a Python script right after the source step.
That script adds the totals of the [Amount] column but am getting an error.
Python code:
import pandas as pd
total_sum = dataset['Amount'].sum()
dataset['Total'] = total_sum
result = dataset
error:
We encountered an error while trying to connect
Details: "ADO.NET: Python script error.
<pi>NameError: name 'dataset' is not defined
</pi>"
Any advice would be appreciated,
Thank you,
Tamir
Thank you lbendlin ,
Although unnecessary, that line just returns another dataset (the default "dataset" and "result")
The problem was that I was missing the parameter that assigned the step to the dataset.
In your M code, it is this:
[dataset=#"Changed Type"]Once I added that parameter to my M code, it worked.
Regards,
Tamir
2 Replies
- lbendlinSuper User
Drop the last line. Python scripts by default return the "dataset" frame back to you.
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTJUitWJVnICsoyUYmMB", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Category = _t, Amount = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Amount", Int64.Type}}), #"Run Python script" = Python.Execute("# 'dataset' holds the input data for this script#(lf)total_sum = dataset['Amount'].sum()#(lf)dataset['Total'] = total_sum",[dataset=#"Changed Type"]), dataset = #"Run Python script"{[Name="dataset"]}[Value] in dataset - tamiribasResolver I
Thank you lbendlin ,
Although unnecessary, that line just returns another dataset (the default "dataset" and "result")
The problem was that I was missing the parameter that assigned the step to the dataset.
In your M code, it is this:
[dataset=#"Changed Type"]Once I added that parameter to my M code, it worked.
Regards,
Tamir