Easy enough,
First, create a measure named "SUM Amount",
SUM Amount = SUM( 'DATATABLE'[Amount] )
then,
_Amount =
VAR __r =
RANK(
ALLSELECTED( 'DATATABLE'[State], 'DATATABLE'[Company] ),
ORDERBY( [SUM Amount], DESC, 'DATATABLE'[Company], DESC ),
PARTITIONBY( 'DATATABLE'[State] )
)
RETURN
IF( __r <= 3, [SUM Amount] )