Revision 52bf5d1b-73a5-4974-a6d0-d0eebc8e4795 - Code Golf Stack Exchange
# [CJam], <s>22</s> 21 bytes
Saved 1 byte thanks to Martin Ender
{_,({0\f+}*ee::m<:.+}
Anonymous block expecting the argument on the stack and leaves the result on the stack.
[Try it online!]
**How it works**
_ e# Duplicate the matrix
,( e# Get its length (# of rows) minus 1
{0\f+}* e# Prepend that many 0s to each row
ee e# Enumerate; map each row to [index, row]
::m< e# Rotate each row left a number of spaces equal to its index
:.+ e# Sum each column
[CJam]: https://sourceforge.net/p/cjam
[Try it online!]: https://tio.run/nexus/cjam#K6z7Xx2vo1FtEJOmXauVmmpllWtjpadd@7@u4H90tKG5AhCYgAjTWK5oIxDL0AzGVbAEMiBiBiCuIYgF4hoZwbhGYMIExDWBGWVoDjPKyBTCjQUA "CJam – TIO Nexus"