How to apply a function to one part while keeping the rest
MapAt[FactorInteger[#][[;; , 1]] &, t1, {All, 2}]
MapAt[Map[First] @* FactorInteger, {All, 2}] @ t1
{{2, {5}}, {3, {3}}, {4, {17}}, {5, {3, 11}}, {6, {5, 13}}, {7, {3, 43}}}
SubsetMap[#[[All,All,1]]& @* FactorInteger, {All, 2}] @ t1
{{2, {5}}, {3, {3}}, {4, {17}}, {5, {3, 11}}, {6, {5, 13}}, {7, {3, 43}}}
{#, FactorInteger[#2][[All, 1]]} & @@@ t1
{{2, {5}}, {3, {3}}, {4, {17}}, {5, {3, 11}}, {6, {5, 13}}, {7, {3, 43}}}
Module[{t = #},
t[[All, 2]] = FactorInteger[t[[All, 2]]][[All, All, 1]]; t] & @ t1
{{2, {5}}, {3, {3}}, {4, {17}}, {5, {3, 11}}, {6, {5, 13}}, {7, {3, 43}}}
Rule approach starts with
rule1 = {x_,y_} :> {x, First /@ FactorInteger[y]};
and then
Replace[z1,rule1,{1}]
gives
{{2,{5}},{3,{3}},{4,{17}},{5,{3,11}},{6,{5,13}},{7,{3,43}}}