options ps=54 ls=80; data galton; do parent = 73.5 to 63.5 by -1; do child = 61.2 to 74.2 by 1; input numcase @@; output; end; end; cards; 0 0 0 0 0 0 0 0 0 0 0 1 3 0 0 0 0 0 0 0 0 1 2 1 2 7 2 4 0 0 0 0 1 3 4 3 5 10 4 9 2 2 1 0 1 0 1 1 3 12 18 14 7 4 3 3 0 0 1 16 4 17 27 20 33 25 20 11 4 5 1 0 7 11 16 25 31 34 48 21 18 4 3 0 0 3 5 14 15 36 38 28 38 19 11 4 0 0 0 3 3 5 2 17 17 14 13 4 0 0 0 0 1 0 9 5 7 11 11 7 7 5 2 1 0 0 1 1 4 4 1 5 5 0 2 0 0 0 0 0 1 0 2 4 1 2 2 1 1 0 0 0 0 0 ; proc sort; by parent child; run; data galton1; set galton; by parent child; if first.parent or first.child then do; if numcase > 0 then do; do i=1 to numcase; output; end; end; end; /* data galton1; set galton1; child=child-68.1; parent=parent-68.3; run; proc reg; model child = parent / noint; run; */ proc reg; model child = parent; run; symbol1 c=black l=1 i=rl v=:; symbol2 c=black l=1 i=join; proc gplot; plot child*parent=1 parent*parent=2 / frame overlay vref=68.09; title 'Galton Height Data'; run; quit;