This is fine, but since `reshape` is also defined on the expressions, you can alternatively write:
```
rms.reshape((data.shape[0], 1)) * idf.reshape((1, data.shape[1]))
```

whatever your preference is :)