Stats-LikeR
view release on metacpan or search on metacpan
}
retval = sv_2mortal(newRV_noinc((SV *)out));
}
Safefree(keys);
}
RETVAL = SvREFCNT_inc(retval);
}
OUTPUT:
RETVAL
# shape: 1 = AoH, 2 = HoH. dropset: hashref whose keys are the columns to remove
SV *
_cols_drop(df, shape, dropset)
SV *df
IV shape
SV *dropset
PREINIT:
SV *retval; HV *drop_hv; SSize_t i;
CODE:
{
drop_hv = (HV *)SvRV(dropset);
if (shape == 1) { // AoH
AV *src = (AV *)SvRV(df); SSize_t R = av_len(src) + 1;
AV *out = newAV(); if (R > 0) av_extend(out, R - 1);
for (i = 0; i < R; i++) {
SV **rp = av_fetch(src, i, 0); HV *inner;
if (rp && *rp && SvROK(*rp) && SvTYPE(SvRV(*rp)) == SVt_PVHV)
inner = row_drop(aTHX_ (HV *)SvRV(*rp), drop_hv);
else
inner = row_drop(aTHX_ NULL, drop_hv);
av_store(out, i, newRV_noinc((SV *)inner));
PL_body_arenas|5.009004||Viu
PL_body_roots|5.009003||Viu
PL_bodytarget|5.005000||Viu
PL_breakable_sub_gen|5.010001||Viu
PL_bufend||5.003007|ponu
PL_bufptr||5.003007|ponu
PL_CCC_non0_non230|5.029008||Viu
PL_check|5.009003|5.006000|
PL_checkav|5.006000||Viu
PL_checkav_save|5.008001||Viu
PL_chopset|5.005000||Viu
PL_clocktick|5.008001||Viu
PL_collation_ix|5.005000||Viu
PL_collation_name|5.005000||Viu
PL_collation_standard|5.005000||Viu
PL_collxfrm_base|5.005000||Viu
PL_collxfrm_mult|5.005000||Viu
PL_colors|5.005000||Viu
PL_colorset|5.005000||Viu
PL_compcv|5.005000||Viu
PL_compiling|5.005000|5.003007|poVnu
( run in 1.044 second using v1.01-cache-2.11-cpan-14f38c9f855 )