Skip to main content
deleted 3 characters in body
Source Link
webcpu
  • 3.3k
  • 14
  • 18

In:

Clear[unitize, pick, n, data] RandomSeed[1]; n = -1; data = RandomChoice[Range[0, 10], {10^710^8, 3}]; AbsoluteTiming[Pick[data, Unitize@data[[All, n]], 1] // Length] unitize[x_] := unitize[x] = Unitize[x] pick[xs_, sel_, patt_] := pick[xs] = Pick[xs, sel, patt] AbsoluteTiming[pick[data, unitize@data[[All, n]], 1] // Length] 

Out:

{07.5211713081, 909064190913401} {05.45802887919, 909064190913401} 

In:

Clear[unitize, pick, n, data] RandomSeed[1]; n = -1; data = RandomChoice[Range[0, 10], {10^7, 3}]; AbsoluteTiming[Pick[data, Unitize@data[[All, n]], 1] // Length] unitize[x_] := unitize[x] = Unitize[x] pick[xs_, sel_, patt_] := pick[xs] = Pick[xs, sel, patt] AbsoluteTiming[pick[data, unitize@data[[All, n]], 1] // Length] 

Out:

{0.521171, 9090641} {0.458028, 9090641} 

In:

Clear[unitize, pick, n, data] RandomSeed[1]; n = -1; data = RandomChoice[Range[0, 10], {10^8, 3}]; AbsoluteTiming[Pick[data, Unitize@data[[All, n]], 1] // Length] unitize[x_] := unitize[x] = Unitize[x] pick[xs_, sel_, patt_] := pick[xs] = Pick[xs, sel, patt] AbsoluteTiming[pick[data, unitize@data[[All, n]], 1] // Length] 

Out:

{7.3081, 90913401} {5.87919, 90913401} 
added 340 characters in body
Source Link
webcpu
  • 3.3k
  • 14
  • 18

In:

Clear[unitize, pick, n, data] RandomSeed[1]; n = -1; data = RandomChoice[Range[0, 1, 0.5]10], {10^610^7, 103}]; data AbsoluteTiming[Pick[data, Unitize@data[[All, n]], 1] // Select[!Length] unitize[x_] AnyTrue[#:= unitize[x] = Unitize[x] pick[xs_, #sel_, ==patt_] := pick[xs] = Pick[xs, sel, patt] AbsoluteTiming[pick[data, unitize@data[[All, n]], 1] // Length] 

Out:

{0.521171, &]9090641} {0.458028, &]9090641} 
data = RandomChoice[Range[0, 1, 0.5], {10^6, 10}]; data // Select[! AnyTrue[#, # == 0 &] &] 

In:

Clear[unitize, pick, n, data] RandomSeed[1]; n = -1; data = RandomChoice[Range[0, 10], {10^7, 3}];  AbsoluteTiming[Pick[data, Unitize@data[[All, n]], 1] // Length] unitize[x_] := unitize[x] = Unitize[x] pick[xs_, sel_, patt_] := pick[xs] = Pick[xs, sel, patt] AbsoluteTiming[pick[data, unitize@data[[All, n]], 1] // Length] 

Out:

{0.521171, 9090641} {0.458028, 9090641} 
Source Link
webcpu
  • 3.3k
  • 14
  • 18

data = RandomChoice[Range[0, 1, 0.5], {10^6, 10}]; data // Select[! AnyTrue[#, # == 0 &] &]