The problem here is that Tableau passes values in aggregate to the external services like R. This means the values sent look like SUM([Price]) etc. In your workbook, there are no fields on the view to break up the aggregation (like a row/sample ID), so the model is being trained on one value and one ouput (essentially a bad result because the model is trying to train on one input and one output).
To pass all rows to R to train the model, I created a Sample ID field that can be used as a dimension. I then set the table calculation to compute addressing all Sample IDs:
This passes all rows of data to R in a single set of vectors (one for Price and one for RM). The model then returns a result based on the parameter value that is passed to the code (rmParam). However, because a value is passed from each Sample ID, a value is also returned for each Sample ID.
To hide these other values, but still pass all data to the R engine, I used a table calculation filter (Table Calc Filter) to hide all resulting values except for the first one. This table calculation just filters out all but the first sample index. Take a look at the Parameter Regression sheet in the attached workbook! I also converted the filter to a continuous slider.