I am currently having a hard time getting a data set to group_by
, then aggregate in base R. Here is the dput
output for the first dozen or so rows of my data (apologies for the awkwardness of this output):
# Test
structure(list(ctr_n = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Pakistan", class = "factor"),
yr = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L), .Label = "1990", class = "factor"),
mn = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L), .Label = "10", class = "factor"), pty = structure(c(39L,
1L, 5L, 40L, 38L, 36L, 34L, 35L, 14L, 37L, 1L, 13L, 34L,
41L, 13L), .Label = c("2", "7", "15", "17", "39", "43", "47",
"55", "61", "69", "87", "88", "90", "91", "98", "100", "108",
"109", "110", "111", "112", "113", "114", "115", "116", "117",
"118", "119", "120", "121", "122", "123", "5001", "5003",
"6001", "6002", "6003", "6004", "6005", "6006", "6007", "6008",
"6009", "6010", "6011", "6012", "6013", "6014", "6015", "6016",
"6017", "6018", "6019", "6020", "6021", "6022", "6023", "6024",
"6025", "6026", "6027", "6028", "6029", "6030", "6031", "6032",
"6033", "6034", "6035", "6036", "6037", "6038", "6039", "6040",
"6041", "6042", "6043", "6044", "6045", "6046", "6047", "6048",
"6049", "6050", "6051", "6052", "6053", "6054", "6055", "6056",
"6057", "6058", "6059", "6060", "6061", "6062", "6063", "6064",
"6065", "6066", "6067", "6068", "6069", "6070", "6071", "6072",
"6073", "6074", "6075", "6076", "6077", "6078", "6079", "6080",
"6081", "6082", "6083", "6084", "6085", "6086", "6087", "6088",
"6089", "6090", "6091", "6092", "6093", "6094", "6095", "6096",
"6097", "6098", "6099", "6100", "6101", "6102", "6103", "6104",
"6105", "6106", "6107", "6108", "6109", "6110", "6111", "6112",
"6113", "6114", "6115", "6116", "6117", "6118", "6119", "6120",
"6121", "6122", "6123", "6124", "6125", "6126", "6127", "6128",
"6129", "6130", "6131", "6132", "6133", "6134", "6135", "6136",
"6137", "6138", "6139", "6140", "6141", "6142", "6143", "6144",
"6145", "6146", "6147", "6148", "6149", "6150", "6151", "6152",
"6153", "6154", "6155", "6156", "6157", "6158", "6159", "6160",
"6161", "6162", "6163", "6164", "6165", "6166", "6167", "6168",
"6169", "6170", "6171", "6172", "6173", "6174", "6175", "6176",
"6177", "6178", "6179", "6180", "6181", "6182", "6183", "6184",
"6185", "6186", "6187", "6188", "6189", "6190", "6191", "6192",
"6193", "6194", "6195", "6196", "6197", "6198", "6199", "6200",
"6201", "6202", "6203", "6204", "6205", "6206", "6207", "6208",
"6209", "6210", "6211", "6212", "6213", "6214", "6215", "6216",
"6217", "6218", "6219", "6220", "6221", "6222", "6223", "6224",
"6225", "6226", "6227", "6228", "6229", "6230", "6231", "6232",
"6233", "6234", "6235", "6236", "6237", "6238", "6239", "6240",
"6241", "6242", "6243", "6244", "6245", "6246", "6247", "6248",
"6249", "6250", "6251", "6252", "6253", "6254", "6255", "6256",
"6257", "6258", "6259", "6260", "6261", "6262", "6263", "6264",
"6265", "6266", "6267", "6268", "6269", "6270", "6271", "6272",
"6273", "6274", "6275", "6276", "6277", "6278", "6279", "6280",
"6281", "6282", "6283", "6284", "6285", "6286", "6287", "6288",
"6289", "6290", "6291", "6292", "6293", "6294", "6295", "6296",
"6297", "6298", "6299", "6300", "6301", "6302", "6303", "6304",
"6305", "6306", "6307", "6308", "6309", "6310", "6311", "6312",
"6313", "6314", "6315", "6316", "6317", "6318", "6319", "6320",
"6321", "6322", "6323", "6324", "6325", "6326", "6327", "6328",
"6329", "6330", "6331", "6332", "6333", "6334", "6335", "6336",
"6337", "6338", "6339", "6340", "6341", "6342", "6343", "6344",
"6345", "6346", "6347", "6348", "6349", "6350", "6351", "6352",
"6353", "6354", "6355", "6356", "6357", "6358", "6359", "6360",
"6361", "6362", "6363", "6364", "6365", "6366", "6367", "6368",
"6369", "6370", "6371", "6372", "6373", "6374", "6375", "6376",
"6377", "6378", "6379", "6380", "6381", "6382", "6383", "6384",
"6385", "6386", "6387", "6388", "6389", "6390", "6391", "6392",
"6393", "6394", "6395", "6396", "6397", "6398", "6399", "6400",
"6401", "6402", "6403", "6404", "6405", "6406", "6407", "6408",
"6409", "6410", "6411", "6412", "6413", "6414", "6415", "6416",
"6417", "6418", "6419", "6420", "6421", "6422", "6423", "6424",
"6425", "6426", "6427", "6428", "6429", "6430", "6431", "6432",
"6433", "6434", "6435", "6436", "6437", "6438", "6439", "6440",
"6441", "6442", "6443", "6444", "6445", "6446", "6447", "6448",
"6449", "6450", "6451", "6452", "6453", "6454", "6455", "6456",
"6457", "6458", "6459", "6460", "6461", "6462", "6463", "6464",
"6465", "6466", "6467", "6468", "6469", "6470", "6471", "6472",
"6473", "6474", "6475", "6476", "6477", "6478", "6479", "6480",
"6481", "6482", "6483", "6484", "6485", "6486", "6487", "6488",
"6489", "6490", "6491", "6492", "6493", "6494", "6495", "6496",
"6497", "6498", "6499", "6500", "6501", "6502", "6503", "6504",
"6505", "6506", "6507", "6508", "6509", "6510", "6511", "6512",
"6513", "6514", "6515", "6516", "6517", "6518", "6519", "6520",
"6521", "6522", "6523", "6524", "6525", "6526", "6527", "6528",
"6529", "6530", "6531", "6532", "6533", "6534", "6535", "6536",
"6537", "6538", "6539", "6540", "6541", "6542", "6543", "6544",
"6545", "6546", "6547", "6548", "6549", "6550", "6551", "6552",
"6553", "6554", "6555", "6556", "6557", "6558", "6559", "6560",
"6561", "6562", "6563", "6564", "6565", "6566", "6567", "6568",
"6569", "6570", "6571", "6572", "6573", "6574", "6575", "6576",
"6577", "6578", "6579", "6580", "6581", "6582", "6583", "6584",
"6585", "6586", "6587", "6588", "6589", "6590", "6591", "6592",
"6593", "6594", "6595", "6596", "6597", "6598", "6599", "6600",
"6601", "6602", "6603", "6604", "6605", "6606", "6607", "6608",
"6609", "6610", "6611", "6612", "6613", "6614", "6615", "6616",
"6617", "6618", "6619", "6620", "6621", "6622", "6623", "6624",
"6625", "6626", "6627", "6628", "6629", "6630", "6631", "6632",
"6633", "6634", "6635", "6636", "6637", "6638", "6639", "6640",
"6641", "6642", "6643", "6644", "6645", "6646", "6647", "6648",
"6649", "6650", "6651", "6652", "6653", "6654", "6655", "6656",
"6657", "6658", "6659", "6660", "6661", "6662", "6663", "6664",
"6665", "6666", "6667", "6668", "6669", "6670", "6671", "6672",
"6673", "6674", "6675", "6676", "6677", "6678", "6679", "6680",
"6681", "6682", "6683", "6684", "6685", "6686", "6687", "6688",
"6689", "6690", "6691", "6692", "6693", "6694", "6695", "6696",
"6697", "6698", "6699", "6700", "6701", "6702", "6703", "6704",
"6705", "6706", "6707", "6708", "6709", "6710", "6711", "6712",
"6713", "6714", "6715", "6716", "6717", "6718", "6719", "6720",
"6721", "6722", "6723", "6724", "6725", "6726", "6727", "6728",
"6729", "6730", "6731", "6732", "6733", "6734", "6735", "6736",
"6737", "6738", "6739", "6740", "6741", "6742", "6743", "6744",
"6745", "6746", "6747", "6748", "6749", "6750", "6751", "6752",
"6753", "6754", "6755", "6756", "6757", "6758", "6759", "6760",
"6761", "6762", "6763", "6764", "6765", "6766", "6767", "6768",
"6769", "6770", "6771", "6772", "6773", "6774", "6775", "6776",
"6777", "6778", "6779", "6780"), class = "factor"), cst = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 3L), .Label = c("1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
"13", "14", "15", "16", "17", "18", "19", "20", "21", "22",
"23", "24", "25", "26", "27", "28", "29", "30", "31", "32",
"33", "34", "35", "36", "37", "38", "39", "40", "41", "42",
"43", "44", "45", "46", "47", "48", "49", "50", "51", "52",
"53", "54", "55", "56", "57", "58", "59", "60", "61", "62",
"63", "64", "65", "66", "67", "68", "69", "70", "71", "72",
"73", "74", "75", "76", "77", "78", "79", "80", "81", "82",
"83", "84", "85", "86", "87", "88", "89", "90", "91", "92",
"93", "94", "95", "96", "97", "98", "99", "100", "101", "102",
"103", "104", "105", "106", "107", "108", "109", "110", "111",
"112", "113", "114", "115", "116", "117", "118", "119", "120",
"121", "122", "123", "124", "125", "126", "127", "128", "129",
"130", "131", "132", "133", "134", "135", "136", "137", "138",
"139", "140", "141", "142", "143", "144", "145", "146", "147",
"148", "149", "150", "151", "152", "153", "154", "155", "156",
"157", "158", "159", "160", "161", "162", "163", "164", "165",
"166", "167", "168", "169", "170", "171", "172", "173", "174",
"175", "176", "177", "178", "179", "180", "181", "182", "183",
"184", "185", "186", "187", "188", "189", "190", "191", "192",
"193", "194", "195", "196", "197", "198", "199", "200", "201",
"202", "203", "204", "205", "206", "207", "208", "209", "210",
"211"), class = "factor"), vote.shares = c(0.00304279853525974,
0.537557577092973, 0.00391366846086856, 0.000996778830516122,
0.00416548627068316, 0.0124859664033072, 0.408689812920352,
0.0158120599746084, 0.00214045138342409, 0.0111954001280074,
0.483634617469833, 0.20612791796397, 0.296435707978995, 0.013801756587202,
0.14398258018741)), row.names = c(NA, 15L), class = "data.frame")
I have something that works with dplyr
below (snippet of code in question), which provides me the desired output. I simply wonder if there is a solid base R option for the same output.
# Dplyr Solution Snippet
# Note I must use the ineq library
library(ineq)
test %>%
group_by(ctr_n, yr, mn, pty) %>%
do((function(x) {
giniI <- ineq(x$vote.shares, NULL, type = "Gini", na.rm=TRUE)
data.frame(x, giniI)})(.)) %>% print
structure(list(ctr_n = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Pakistan", class = "factor"),
yr = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L), .Label = "1990", class = "factor"),
mn = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L), .Label = "10", class = "factor"), pty = structure(c(1L,
1L, 5L, 13L, 13L, 14L, 34L, 34L, 35L, 36L, 37L, 38L, 39L,
40L, 41L), .Label = c("2", "7", "15", "17", "39", "43", "47",
"55", "61", "69", "87", "88", "90", "91", "98", "100", "108",
"109", "110", "111", "112", "113", "114", "115", "116", "117",
"118", "119", "120", "121", "122", "123", "5001", "5003",
"6001", "6002", "6003", "6004", "6005", "6006", "6007", "6008",
"6009", "6010", "6011", "6012", "6013", "6014", "6015", "6016",
"6017", "6018", "6019", "6020", "6021", "6022", "6023", "6024",
"6025", "6026", "6027", "6028", "6029", "6030", "6031", "6032",
"6033", "6034", "6035", "6036", "6037", "6038", "6039", "6040",
"6041", "6042", "6043", "6044", "6045", "6046", "6047", "6048",
"6049", "6050", "6051", "6052", "6053", "6054", "6055", "6056",
"6057", "6058", "6059", "6060", "6061", "6062", "6063", "6064",
"6065", "6066", "6067", "6068", "6069", "6070", "6071", "6072",
"6073", "6074", "6075", "6076", "6077", "6078", "6079", "6080",
"6081", "6082", "6083", "6084", "6085", "6086", "6087", "6088",
"6089", "6090", "6091", "6092", "6093", "6094", "6095", "6096",
"6097", "6098", "6099", "6100", "6101", "6102", "6103", "6104",
"6105", "6106", "6107", "6108", "6109", "6110", "6111", "6112",
"6113", "6114", "6115", "6116", "6117", "6118", "6119", "6120",
"6121", "6122", "6123", "6124", "6125", "6126", "6127", "6128",
"6129", "6130", "6131", "6132", "6133", "6134", "6135", "6136",
"6137", "6138", "6139", "6140", "6141", "6142", "6143", "6144",
"6145", "6146", "6147", "6148", "6149", "6150", "6151", "6152",
"6153", "6154", "6155", "6156", "6157", "6158", "6159", "6160",
"6161", "6162", "6163", "6164", "6165", "6166", "6167", "6168",
"6169", "6170", "6171", "6172", "6173", "6174", "6175", "6176",
"6177", "6178", "6179", "6180", "6181", "6182", "6183", "6184",
"6185", "6186", "6187", "6188", "6189", "6190", "6191", "6192",
"6193", "6194", "6195", "6196", "6197", "6198", "6199", "6200",
"6201", "6202", "6203", "6204", "6205", "6206", "6207", "6208",
"6209", "6210", "6211", "6212", "6213", "6214", "6215", "6216",
"6217", "6218", "6219", "6220", "6221", "6222", "6223", "6224",
"6225", "6226", "6227", "6228", "6229", "6230", "6231", "6232",
"6233", "6234", "6235", "6236", "6237", "6238", "6239", "6240",
"6241", "6242", "6243", "6244", "6245", "6246", "6247", "6248",
"6249", "6250", "6251", "6252", "6253", "6254", "6255", "6256",
"6257", "6258", "6259", "6260", "6261", "6262", "6263", "6264",
"6265", "6266", "6267", "6268", "6269", "6270", "6271", "6272",
"6273", "6274", "6275", "6276", "6277", "6278", "6279", "6280",
"6281", "6282", "6283", "6284", "6285", "6286", "6287", "6288",
"6289", "6290", "6291", "6292", "6293", "6294", "6295", "6296",
"6297", "6298", "6299", "6300", "6301", "6302", "6303", "6304",
"6305", "6306", "6307", "6308", "6309", "6310", "6311", "6312",
"6313", "6314", "6315", "6316", "6317", "6318", "6319", "6320",
"6321", "6322", "6323", "6324", "6325", "6326", "6327", "6328",
"6329", "6330", "6331", "6332", "6333", "6334", "6335", "6336",
"6337", "6338", "6339", "6340", "6341", "6342", "6343", "6344",
"6345", "6346", "6347", "6348", "6349", "6350", "6351", "6352",
"6353", "6354", "6355", "6356", "6357", "6358", "6359", "6360",
"6361", "6362", "6363", "6364", "6365", "6366", "6367", "6368",
"6369", "6370", "6371", "6372", "6373", "6374", "6375", "6376",
"6377", "6378", "6379", "6380", "6381", "6382", "6383", "6384",
"6385", "6386", "6387", "6388", "6389", "6390", "6391", "6392",
"6393", "6394", "6395", "6396", "6397", "6398", "6399", "6400",
"6401", "6402", "6403", "6404", "6405", "6406", "6407", "6408",
"6409", "6410", "6411", "6412", "6413", "6414", "6415", "6416",
"6417", "6418", "6419", "6420", "6421", "6422", "6423", "6424",
"6425", "6426", "6427", "6428", "6429", "6430", "6431", "6432",
"6433", "6434", "6435", "6436", "6437", "6438", "6439", "6440",
"6441", "6442", "6443", "6444", "6445", "6446", "6447", "6448",
"6449", "6450", "6451", "6452", "6453", "6454", "6455", "6456",
"6457", "6458", "6459", "6460", "6461", "6462", "6463", "6464",
"6465", "6466", "6467", "6468", "6469", "6470", "6471", "6472",
"6473", "6474", "6475", "6476", "6477", "6478", "6479", "6480",
"6481", "6482", "6483", "6484", "6485", "6486", "6487", "6488",
"6489", "6490", "6491", "6492", "6493", "6494", "6495", "6496",
"6497", "6498", "6499", "6500", "6501", "6502", "6503", "6504",
"6505", "6506", "6507", "6508", "6509", "6510", "6511", "6512",
"6513", "6514", "6515", "6516", "6517", "6518", "6519", "6520",
"6521", "6522", "6523", "6524", "6525", "6526", "6527", "6528",
"6529", "6530", "6531", "6532", "6533", "6534", "6535", "6536",
"6537", "6538", "6539", "6540", "6541", "6542", "6543", "6544",
"6545", "6546", "6547", "6548", "6549", "6550", "6551", "6552",
"6553", "6554", "6555", "6556", "6557", "6558", "6559", "6560",
"6561", "6562", "6563", "6564", "6565", "6566", "6567", "6568",
"6569", "6570", "6571", "6572", "6573", "6574", "6575", "6576",
"6577", "6578", "6579", "6580", "6581", "6582", "6583", "6584",
"6585", "6586", "6587", "6588", "6589", "6590", "6591", "6592",
"6593", "6594", "6595", "6596", "6597", "6598", "6599", "6600",
"6601", "6602", "6603", "6604", "6605", "6606", "6607", "6608",
"6609", "6610", "6611", "6612", "6613", "6614", "6615", "6616",
"6617", "6618", "6619", "6620", "6621", "6622", "6623", "6624",
"6625", "6626", "6627", "6628", "6629", "6630", "6631", "6632",
"6633", "6634", "6635", "6636", "6637", "6638", "6639", "6640",
"6641", "6642", "6643", "6644", "6645", "6646", "6647", "6648",
"6649", "6650", "6651", "6652", "6653", "6654", "6655", "6656",
"6657", "6658", "6659", "6660", "6661", "6662", "6663", "6664",
"6665", "6666", "6667", "6668", "6669", "6670", "6671", "6672",
"6673", "6674", "6675", "6676", "6677", "6678", "6679", "6680",
"6681", "6682", "6683", "6684", "6685", "6686", "6687", "6688",
"6689", "6690", "6691", "6692", "6693", "6694", "6695", "6696",
"6697", "6698", "6699", "6700", "6701", "6702", "6703", "6704",
"6705", "6706", "6707", "6708", "6709", "6710", "6711", "6712",
"6713", "6714", "6715", "6716", "6717", "6718", "6719", "6720",
"6721", "6722", "6723", "6724", "6725", "6726", "6727", "6728",
"6729", "6730", "6731", "6732", "6733", "6734", "6735", "6736",
"6737", "6738", "6739", "6740", "6741", "6742", "6743", "6744",
"6745", "6746", "6747", "6748", "6749", "6750", "6751", "6752",
"6753", "6754", "6755", "6756", "6757", "6758", "6759", "6760",
"6761", "6762", "6763", "6764", "6765", "6766", "6767", "6768",
"6769", "6770", "6771", "6772", "6773", "6774", "6775", "6776",
"6777", "6778", "6779", "6780"), class = "factor"), cst = structure(c(1L,
2L, 1L, 2L, 3L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 2L), .Label = c("1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
"13", "14", "15", "16", "17", "18", "19", "20", "21", "22",
"23", "24", "25", "26", "27", "28", "29", "30", "31", "32",
"33", "34", "35", "36", "37", "38", "39", "40", "41", "42",
"43", "44", "45", "46", "47", "48", "49", "50", "51", "52",
"53", "54", "55", "56", "57", "58", "59", "60", "61", "62",
"63", "64", "65", "66", "67", "68", "69", "70", "71", "72",
"73", "74", "75", "76", "77", "78", "79", "80", "81", "82",
"83", "84", "85", "86", "87", "88", "89", "90", "91", "92",
"93", "94", "95", "96", "97", "98", "99", "100", "101", "102",
"103", "104", "105", "106", "107", "108", "109", "110", "111",
"112", "113", "114", "115", "116", "117", "118", "119", "120",
"121", "122", "123", "124", "125", "126", "127", "128", "129",
"130", "131", "132", "133", "134", "135", "136", "137", "138",
"139", "140", "141", "142", "143", "144", "145", "146", "147",
"148", "149", "150", "151", "152", "153", "154", "155", "156",
"157", "158", "159", "160", "161", "162", "163", "164", "165",
"166", "167", "168", "169", "170", "171", "172", "173", "174",
"175", "176", "177", "178", "179", "180", "181", "182", "183",
"184", "185", "186", "187", "188", "189", "190", "191", "192",
"193", "194", "195", "196", "197", "198", "199", "200", "201",
"202", "203", "204", "205", "206", "207", "208", "209", "210",
"211"), class = "factor"), vote.shares = c(0.537557577092973,
0.483634617469833, 0.00391366846086856, 0.20612791796397,
0.14398258018741, 0.00214045138342409, 0.408689812920352,
0.296435707978995, 0.0158120599746084, 0.0124859664033072,
0.0111954001280074, 0.00416548627068316, 0.00304279853525974,
0.000996778830516122, 0.013801756587202), giniI = c(0.0264019642483782,
0.0264019642483782, 0, 0.088751034465824, 0.088751034465824,
0, 0.0795986683322589, 0.0795986683322589, 0, 0, 0, 0, 0,
0, 0)), row.names = c(NA, -15L), groups = structure(list(
ctr_n = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L), .Label = "Pakistan", class = "factor"), yr = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "1990", class = "factor"),
mn = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L), .Label = "10", class = "factor"), pty = structure(c(1L,
5L, 13L, 14L, 34L, 35L, 36L, 37L, 38L, 39L, 40L, 41L), .Label = c("2",
"7", "15", "17", "39", "43", "47", "55", "61", "69", "87",
"88", "90", "91", "98", "100", "108", "109", "110", "111",
"112", "113", "114", "115", "116", "117", "118", "119", "120",
"121", "122", "123", "5001", "5003", "6001", "6002", "6003",
"6004", "6005", "6006", "6007", "6008", "6009", "6010", "6011",
"6012", "6013", "6014", "6015", "6016", "6017", "6018", "6019",
"6020", "6021", "6022", "6023", "6024", "6025", "6026", "6027",
"6028", "6029", "6030", "6031", "6032", "6033", "6034", "6035",
"6036", "6037", "6038", "6039", "6040", "6041", "6042", "6043",
"6044", "6045", "6046", "6047", "6048", "6049", "6050", "6051",
"6052", "6053", "6054", "6055", "6056", "6057", "6058", "6059",
"6060", "6061", "6062", "6063", "6064", "6065", "6066", "6067",
"6068", "6069", "6070", "6071", "6072", "6073", "6074", "6075",
"6076", "6077", "6078", "6079", "6080", "6081", "6082", "6083",
"6084", "6085", "6086", "6087", "6088", "6089", "6090", "6091",
"6092", "6093", "6094", "6095", "6096", "6097", "6098", "6099",
"6100", "6101", "6102", "6103", "6104", "6105", "6106", "6107",
"6108", "6109", "6110", "6111", "6112", "6113", "6114", "6115",
"6116", "6117", "6118", "6119", "6120", "6121", "6122", "6123",
"6124", "6125", "6126", "6127", "6128", "6129", "6130", "6131",
"6132", "6133", "6134", "6135", "6136", "6137", "6138", "6139",
"6140", "6141", "6142", "6143", "6144", "6145", "6146", "6147",
"6148", "6149", "6150", "6151", "6152", "6153", "6154", "6155",
"6156", "6157", "6158", "6159", "6160", "6161", "6162", "6163",
"6164", "6165", "6166", "6167", "6168", "6169", "6170", "6171",
"6172", "6173", "6174", "6175", "6176", "6177", "6178", "6179",
"6180", "6181", "6182", "6183", "6184", "6185", "6186", "6187",
"6188", "6189", "6190", "6191", "6192", "6193", "6194", "6195",
"6196", "6197", "6198", "6199", "6200", "6201", "6202", "6203",
"6204", "6205", "6206", "6207", "6208", "6209", "6210", "6211",
"6212", "6213", "6214", "6215", "6216", "6217", "6218", "6219",
"6220", "6221", "6222", "6223", "6224", "6225", "6226", "6227",
"6228", "6229", "6230", "6231", "6232", "6233", "6234", "6235",
"6236", "6237", "6238", "6239", "6240", "6241", "6242", "6243",
"6244", "6245", "6246", "6247", "6248", "6249", "6250", "6251",
"6252", "6253", "6254", "6255", "6256", "6257", "6258", "6259",
"6260", "6261", "6262", "6263", "6264", "6265", "6266", "6267",
"6268", "6269", "6270", "6271", "6272", "6273", "6274", "6275",
"6276", "6277", "6278", "6279", "6280", "6281", "6282", "6283",
"6284", "6285", "6286", "6287", "6288", "6289", "6290", "6291",
"6292", "6293", "6294", "6295", "6296", "6297", "6298", "6299",
"6300", "6301", "6302", "6303", "6304", "6305", "6306", "6307",
"6308", "6309", "6310", "6311", "6312", "6313", "6314", "6315",
"6316", "6317", "6318", "6319", "6320", "6321", "6322", "6323",
"6324", "6325", "6326", "6327", "6328", "6329", "6330", "6331",
"6332", "6333", "6334", "6335", "6336", "6337", "6338", "6339",
"6340", "6341", "6342", "6343", "6344", "6345", "6346", "6347",
"6348", "6349", "6350", "6351", "6352", "6353", "6354", "6355",
"6356", "6357", "6358", "6359", "6360", "6361", "6362", "6363",
"6364", "6365", "6366", "6367", "6368", "6369", "6370", "6371",
"6372", "6373", "6374", "6375", "6376", "6377", "6378", "6379",
"6380", "6381", "6382", "6383", "6384", "6385", "6386", "6387",
"6388", "6389", "6390", "6391", "6392", "6393", "6394", "6395",
"6396", "6397", "6398", "6399", "6400", "6401", "6402", "6403",
"6404", "6405", "6406", "6407", "6408", "6409", "6410", "6411",
"6412", "6413", "6414", "6415", "6416", "6417", "6418", "6419",
"6420", "6421", "6422", "6423", "6424", "6425", "6426", "6427",
"6428", "6429", "6430", "6431", "6432", "6433", "6434", "6435",
"6436", "6437", "6438", "6439", "6440", "6441", "6442", "6443",
"6444", "6445", "6446", "6447", "6448", "6449", "6450", "6451",
"6452", "6453", "6454", "6455", "6456", "6457", "6458", "6459",
"6460", "6461", "6462", "6463", "6464", "6465", "6466", "6467",
"6468", "6469", "6470", "6471", "6472", "6473", "6474", "6475",
"6476", "6477", "6478", "6479", "6480", "6481", "6482", "6483",
"6484", "6485", "6486", "6487", "6488", "6489", "6490", "6491",
"6492", "6493", "6494", "6495", "6496", "6497", "6498", "6499",
"6500", "6501", "6502", "6503", "6504", "6505", "6506", "6507",
"6508", "6509", "6510", "6511", "6512", "6513", "6514", "6515",
"6516", "6517", "6518", "6519", "6520", "6521", "6522", "6523",
"6524", "6525", "6526", "6527", "6528", "6529", "6530", "6531",
"6532", "6533", "6534", "6535", "6536", "6537", "6538", "6539",
"6540", "6541", "6542", "6543", "6544", "6545", "6546", "6547",
"6548", "6549", "6550", "6551", "6552", "6553", "6554", "6555",
"6556", "6557", "6558", "6559", "6560", "6561", "6562", "6563",
"6564", "6565", "6566", "6567", "6568", "6569", "6570", "6571",
"6572", "6573", "6574", "6575", "6576", "6577", "6578", "6579",
"6580", "6581", "6582", "6583", "6584", "6585", "6586", "6587",
"6588", "6589", "6590", "6591", "6592", "6593", "6594", "6595",
"6596", "6597", "6598", "6599", "6600", "6601", "6602", "6603",
"6604", "6605", "6606", "6607", "6608", "6609", "6610", "6611",
"6612", "6613", "6614", "6615", "6616", "6617", "6618", "6619",
"6620", "6621", "6622", "6623", "6624", "6625", "6626", "6627",
"6628", "6629", "6630", "6631", "6632", "6633", "6634", "6635",
"6636", "6637", "6638", "6639", "6640", "6641", "6642", "6643",
"6644", "6645", "6646", "6647", "6648", "6649", "6650", "6651",
"6652", "6653", "6654", "6655", "6656", "6657", "6658", "6659",
"6660", "6661", "6662", "6663", "6664", "6665", "6666", "6667",
"6668", "6669", "6670", "6671", "6672", "6673", "6674", "6675",
"6676", "6677", "6678", "6679", "6680", "6681", "6682", "6683",
"6684", "6685", "6686", "6687", "6688", "6689", "6690", "6691",
"6692", "6693", "6694", "6695", "6696", "6697", "6698", "6699",
"6700", "6701", "6702", "6703", "6704", "6705", "6706", "6707",
"6708", "6709", "6710", "6711", "6712", "6713", "6714", "6715",
"6716", "6717", "6718", "6719", "6720", "6721", "6722", "6723",
"6724", "6725", "6726", "6727", "6728", "6729", "6730", "6731",
"6732", "6733", "6734", "6735", "6736", "6737", "6738", "6739",
"6740", "6741", "6742", "6743", "6744", "6745", "6746", "6747",
"6748", "6749", "6750", "6751", "6752", "6753", "6754", "6755",
"6756", "6757", "6758", "6759", "6760", "6761", "6762", "6763",
"6764", "6765", "6766", "6767", "6768", "6769", "6770", "6771",
"6772", "6773", "6774", "6775", "6776", "6777", "6778", "6779",
"6780"), class = "factor"), .rows = structure(list(1:2, 3L,
4:5, 6L, 7:8, 9L, 10L, 11L, 12L, 13L, 14L, 15L), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), row.names = c(NA, 12L), class = c("tbl_df",
"tbl", "data.frame"), .drop = TRUE), class = c("grouped_df",
"tbl_df", "tbl", "data.frame"))
I have tried the following, but they are not providing me with the same values, nor are they in the form of R object.
do.call(what = ineq,args = list(gini$vote.shares,NULL,type = inequalityType,na.rm = TRUE),quote = FALSE)
# [1] 0.6665478
# This is giving me different-length errors
aggregate(gini,giniI = ave(vote.shares,c("ctr_n", "yr", "mn", "pty"),
FUN = ineq(gini$vote.shares, NULL, type = inequalityType, na.rm = TRUE)))
Again, apologies for so many snippets of information (given private nature of the work). I simply am aiming to get the group_by()
do()
section in a base R solution. Any help is appreciated! And please let me know if you have questions.
In base R
an option is by
by(test, test[c('ctr_n', 'yr', 'mn', 'pty')], FUN = function(x) ineq(x$vote.shares, NULL, type = "Gini", na.rm = TRUE))
Or another option is split
out <- do.call(rbind, lapply(split(test, test[c('ctr_n', 'yr', 'mn', 'pty')],
drop = TRUE), function(x) data.frame(x[1,],
giniI = ineq(x$vote.shares, NULL, type = "Gini", na.rm = TRUE))))
row.names(out) <- NULL