I think a good addition to la would be la.dot() and/or a dot method: lar1.dot(lar2, join='inner', fill=np.nan) where fill is used when the join method ('outer', 'left', 'right') creates new data.