1

I have two dataframes of financial ratios differing in sample size. I'd like to perform a non-parametric test to compare each ratio in the two samples.

How do I efficiently combine the dataframes in order to run the Mann-Whitney-Wilcoxon Test? I have 15 ratios to test.

I've include the sample data.

Small Sample:

structure(list(YEAR = c(2008, 2009, 2010, 2011, 2012, 2013, 2014, 
2015, 2016, 2017, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 
2016, 2017), FARM = c("D", "D", "D", "D", "D", "D", "D", "D", 
"D", "D", "I", "I", "I", "I", "I", "I", "I", "I", "I", "I"), 
    `CURRENT RATIO` = c(0.568022785746452, 0.329854720020037, 
    0.832073159580644, 0.643108790851367, 25.1454874121908, 14.5975395062397, 
    5.12537888750377, 5.20160770260219, 7.64257374037806, 2.1580962424325, 
    1.31703632160198, 0.125166573684741, 0.0680923398879462, 
    0.100452384108057, 0.0998706900125819, 0.0907309088049343, 
    0.521537398114045, 0.773433351511582, 0.174099653043861, 
    0.0804425861373205), `WORKING CAPITAL TO GROSS FARMING INCOME` = c(-0.132573843177753, 
    -0.419436996986394, -0.031444400685141, -0.114022796397208, 
    1.22962822585944, 0.397841184148093, 0.239623650110705, 0.295681875030473, 
    0.502930206605254, 0.41862926754376, 0.0513905118422565, 
    -0.406448322702947, -0.343476652794216, -0.366684678854441, 
    -0.27321810774102, -0.306827980132377, -0.173010159020099, 
    -0.140768598200492, -0.367184395657858, -0.888263538055031
    ), `DEBT TO TOTAL ASSET RATIO` = c(0.0846892634197993, 0.102127561711337, 
    0.0750728145035032, 0.0797349374471145, 0.0122514875519798, 
    0.0162967044282012, 0.0165670856047258, 0.0188732833402721, 
    0.0150968780472965, 0.0275252089477482, 0.1123291162633, 
    0.151496340475165, 0.0960615511639704, 0.0985641068765839, 
    0.119816717131179, 0.121164074695269, 0.0970056997272376, 
    0.139114211255347, 0.0686657852466466, 0.17098484263781), 
    `DEBT TO FARM ASSET RATIO` = c(0.0935832744841849, 0.114259598684054, 
    0.0824723632268821, 0.08365143337564, 0.0129689938858425, 
    0.0191316764222117, 0.0216751963945452, 0.0225358439285237, 
    0.0167830935834987, 0.030821228954403, 0.140068283663094, 
    0.203393535891141, 0.133942894025292, 0.137887444914688, 
    0.17818477721901, 0.182143899668642, 0.141540075268137, 0.212926916788055, 
    0.0962721755129152, 0.172706971368876), `EQUITY TO ASSET RATIO` = c(0.915310736580201, 
    0.897872438288663, 0.924927185496497, 0.920265062552885, 
    0.98774851244802, 0.983703295571799, 0.983432914395274, 0.981126716659728, 
    0.984903121952704, 0.972474791052252, 0.8876708837367, 0.848503659524835, 
    0.90393844883603, 0.901435893123416, 0.880183282868821, 0.878835925304732, 
    0.902994300272762, 0.860885788744653, 0.931334214753353, 
    0.82901515736219), `DEBT TO EQUITY RATIO` = c(0.0925251502415636, 
    0.113743954437438, 0.0811661887343104, 0.0866434472975902, 
    0.0124034482437396, 0.0165666868267717, 0.0168461776723358, 
    0.0192363361631072, 0.0153282873318188, 0.0283042904566863, 
    0.126543652970169, 0.178545300040313, 0.106270013503315, 
    0.109341227289126, 0.13612700838927, 0.137868823072129, 0.107426702137473, 
    0.161594270778014, 0.0737284040024573, 0.206250562633691), 
    `RETURN ON FARM ASSETS` = c(0.0170145283510924, -0.00522377886147693, 
    0.0237250420249203, 0.00257743472229431, 0.0213365859181817, 
    0.0244609737360482, 0.0279373354305636, 0.0167869242322396, 
    0.0572363957452595, -0.00273821783417637, 0.0325678749005671, 
    -0.0532931806283685, 0.024215521265722, -0.0178636730481072, 
    0.0189254399688753, 0.00211416100547258, -0.00938005681041073, 
    0.0501921695586829, 0.0215269026374393, -0.0366154070757298
    ), `RETURN ON ASSETS` = c(0.0566608458884666, 0.0239054711694685, 
    0.0264084815850861, 0.00576204495548541, 0.179667366138176, 
    0.0246773695339781, 0.0246552659101915, 0.020526505137709, 
    0.0551370549195115, -5.05665725060606e-05, 0.0449112877923212, 
    -0.0284073208306705, 0.0249952584312144, -0.00283565027536605, 
    0.0360687362998932, 0.0080927754538142, -0.00331579015236834, 
    0.0457634829675583, 0.0229640648122328, -0.023016837706958
    ), `RETURN ON EQUITY` = c(0.0168221490501512, -0.00520020437367425, 
    0.023349291367177, 0.00266962346623839, 0.0204061503508897, 
    0.0211814836515069, 0.0217131742563291, 0.0143291246913213, 
    0.0522749822883451, -0.002514608130223, 0.0294232052511338, 
    -0.0467824450944562, 0.0192125442012039, -0.0141654371518756, 
    0.0144583817182496, 0.00160025611694793, -0.00711931632857772, 
    0.0380917883044123, 0.0164860113123938, -0.0437269454184399
    ), `FARM OPERATING PROFIT MARGIN RATIO` = c(0.113108456739495, 
    -0.0455472105804567, 0.199838203998892, 0.0234275923606582, 
    0.158472105656006, 0.183710042172317, 0.190582976791897, 
    0.124927655425634, 0.45847835351018, -0.0422031337055503, 
    0.122121670323183, -0.243017854350921, 0.11277681710057, 
    -0.0790679940692684, 0.076084143213901, 0.00890894198839937, 
    -0.0450368591167229, 0.204577659697265, 0.13619384495868, 
    -0.358538500350435), `ASSET TURNOVER RATIO` = c(0.0153974936379558, 
    -0.00466912018059027, 0.0215963943475807, 0.00245676120615052, 
    0.0201561446538819, 0.0208362952730876, 0.0213534502396742, 
    0.0140586870610039, 0.0514857932558134, -0.00244539301601691, 
    0.0261181226076402, -0.0396950758641658, 0.0173669574034299, 
    -0.0127692334904846, 0.0127260258857395, 0.00140636256526249, 
    -0.00642870206654449, 0.0327926792191383, 0.0153539864000432, 
    -0.0362503005370359), `OPERATING EXPENSE RATIO` = c(0.671535228245263, 
    0.773166498456329, 0.607985458258, 0.724432447012029, 0.67336000606662, 
    0.64796797949329, 0.589032574693052, 0.74988495257417, 0.461775664398759, 
    0.862141471389961, 0.672863504023624, 0.980455882037588, 
    0.669661413731221, 0.86690216270866, 0.670033358895902, 0.737005445439968, 
    0.783494244501376, 0.649760819934915, 0.706382908455109, 
    1.134948535946), `DEPRECIATION EXPENSE RATIO` = c(0.12660532789432, 
    0.132732814909818, 0.103826844188336, 0.144629676126728, 
    0.140059287930065, 0.157478624539652, 0.141620283491016, 
    0.0919194664659044, 0.0583370508964949, 0.133579109920113, 
    0.150646135557582, 0.183514628711121, 0.146236932328879, 
    0.16125312788589, 0.191531747619893, 0.197293862401247, 0.193527787561396, 
    0.0913809290148264, 0.0946887014018637, 0.145522583536315
    ), `INTEREST EXPENSE RATIO` = c(0.0887509871209225, 0.139647897214309, 
    0.0883494935547731, 0.107510284500585, 0.028108600347309, 
    0.0108433537947408, 0.0787641650240354, 0.0332679255342914, 
    0.0214089311945663, 0.0464825523954769, 0.0543686900956105, 
    0.0790473436022124, 0.0713248368393299, 0.0509127034747178, 
    0.0623507502703033, 0.0567917501703862, 0.068014827053951, 
    0.0542805913529945, 0.0627345451843474, 0.0780673808681226
    ), `NET FARM INCOME RATIO` = c(0.113108456739495, -0.0455472105804567, 
    0.199838203998892, 0.0234275923606582, 0.158472105656006, 
    0.183710042172317, 0.190582976791897, 0.124927655425634, 
    0.45847835351018, -0.0422031337055503, 0.122121670323183, 
    -0.243017854350921, 0.11277681710057, -0.0790679940692684, 
    0.076084143213901, 0.00890894198839937, -0.0450368591167229, 
    0.204577659697265, 0.13619384495868, -0.358538500350435)), class = c("tbl_df", 
"tbl", "data.frame"), row.names = c(NA, -20L))

Large Sample:

structure(list(YEAR = c(2008, 2008, 2008, 2008, 2008, 2008, 2008, 
2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 
2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 
2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008
), FARM = c(11407100, 11484600, 11485100, 11495100, 11801800, 
11806400, 11820000, 11885400, 11886000, 11897200, 11897300, 12004500, 
12004501, 12303001, 12340101, 12398300, 13050001, 13700201, 13705601, 
14089100, 14110900, 14130000, 14130002, 14184100, 14192300, 14330302, 
14388200, 14783200, 14786200, 15094200, 15096200, 15584200, 15586100, 
15682100, 15683100, 15689100, 16507002, 16580000, 16598200, 16601300
), `CURRENT RATIO` = c(-3, 0, 4.57, 15.94, 2.22, 0, 368.69, 1.86, 
9.1, 3.45, 2, 0, 1.58, 6.26, 1.97, 1.54, 0, 3.39, 313.09, 5.59, 
5.4, 0, 3.6, 5.78, 3.18, 207.1, 2.36, 28.31, 3.4, 3.68, 0.37, 
3.5, 5.6, 13.64, 7.05, 0, 2.23, 0.89, 4.4, 1.11), `WORKING CAPITAL TO GROSS FARMING INCOME` = c(0.783990044655886, 
0.939342207539837, 0.468883358203084, 0.53708199556795, 0.429230789973027, 
0.856616290636639, 0.46085746623408, 0.019246546772549, 1.04338230212655, 
0.318770448161572, 0.398058372857175, 0.506978780306214, 0.263816960947357, 
0.4960655740923, 0.101962576323424, 0.220623464476751, 1.12676140487953, 
0.533690322762107, 0.685276501922026, 0.703540899065169, 0.660869855557338, 
0.71777803486123, 0.319578323479609, 0.722736340214157, 0.286630301648443, 
0.818610240507597, 0.184477489966846, 0.78148168000963, 0.357891811040315, 
0.289159422203956, -0.125641128630768, 0.392321597654173, 0.561996673317676, 
0.353452531903466, 0.683345718597063, 0.804567295215173, 0.307398272114796, 
-0.375449779668313, 0.186702574682293, -0.55737251721071), `DEBT TO TOTAL ASSET RATIO` = c(0.02, 
0.07, 0.27, 0.37, 0.36, 0, 0.07, 0.37, 0.05, 0.33, 0.42, 0.08, 
0.24, 0.34, 0.36, 0.51, 0.01, 0.11, 0.1, 0.07, 0.08, 0.01, 0.32, 
0.14, 0.4, 0.52, 0.39, 0.06, 0.21, 0.32, 0.43, 0.52, 0.29, 0.12, 
0.17, 0.1, 0.15, 0.87, 0.12, 0.69), `DEBT TO FARM ASSET RATIO` = c(0.0210960466847519, 
0.0662443993261916, 0.270051570315789, 0.373240578143398, 0.359031265562519, 
0, 0.0678176279710153, 0.369000587598404, 0.04831743727994, 0.33065743433488, 
0.41680939549244, 0.0851067276205844, 0.245359588845858, 0.337912727823456, 
0.356607488633417, 0.508663012923272, 0.0126098421632802, 0.10665178903834, 
0.105106247793806, 0.0698908293989529, 0.0818483764283224, 0.00750932570017385, 
0.319501072718455, 0.136757510256717, 0.400840648545665, 0.516753083750126, 
0.389587948103612, 0.0577299469460252, 0.206521419569117, 0.315261383020663, 
0.43256943562472, 0.520491208048298, 0.290288373137576, 0.120229338185664, 
0.173192986515349, 0.104536048245734, 0.151997186500475, 0.868552025800098, 
0.123958600776313, 0.692195974317741), `EQUITY TO ASSET RATIO` = c(0.98536882817945, 
0.944215770167283, 0.736537746555766, 0.729860554651407, 0.642228778874089, 
1, 0.94228148558872, 0.630999412401596, 0.95168256272006, 0.66934256566512, 
0.592693562701164, 0.914893272379416, 0.813956784138156, 0.688995447780108, 
0.725420084109645, 0.545241148972386, 0.988536562104007, 0.900124825958172, 
0.90344241855196, 0.930936390469265, 0.92060316189968, 0.992490674299826, 
0.758518009863028, 0.881474617998699, 0.600468426703118, 0.553595877267449, 
0.667405715763261, 0.942270053053975, 0.842757601135073, 0.708413078986436, 
0.56743056437528, 0.533041296742996, 0.743304732269968, 0.88511363093375, 
0.831970255984885, 0.904591907651469, 0.876296809602567, 0.131447974199902, 
0.890119750534961, 0.307804025682259), `DEBT TO EQUITY RATIO` = c(0.02, 
0.07, 0.37, 0.6, 0.56, 0, 0.07, 0.58, 0.05, 0.49, 0.72, 0.09, 
0.32, 0.51, 0.55, 1.04, 0.01, 0.12, 0.12, 0.08, 0.09, 0.01, 0.47, 
0.16, 0.67, 1.07, 0.64, 0.06, 0.26, 0.46, 0.76, 1.08, 0.41, 0.14, 
0.21, 0.12, 0.18, 6.61, 0.14, 2.25), `RETURN ON FARM ASSETS` = c(0.374484329540697, 
0.0498819566035984, 0.181954755022922, 0.193161758267218, 0.0473627311001023, 
0.327305563029612, 0.603037930741254, -0.0156737997438482, 0.10397858597475, 
0.10789191406389, 0.180771277730155, 0.150007797084, 0.174196776278552, 
0.120122100767257, 0.298096858936563, 0.0517125227815447, 0.111597414809764, 
0.185024421154621, 0.239979711875599, 0.0808784377916965, 0.201436668181771, 
0.135024051506645, 0.251851638310215, 0.103285147847268, 0.14207589091784, 
0.247675592658745, 0.100067311604358, 0.308209326567443, 0.154555623216289, 
0.174464204907127, 0.00457531564104158, 0.098141499884622, 0.251116584438097, 
0.153198476415449, 0.183688952743912, 0.0838032420725189, 0.169288085631256, 
0.0279120898963428, 0.147329195543669, 0.034801030826966), `RETURN ON ASSETS` = c(0.260063898261748, 
0.0581159003954688, 0.186586004612603, 0.144217266907855, 0.0471965084015535, 
0.203276288956977, 0.522691591931166, -0.0156737997438482, 0.104160943214225, 
0.110451790466256, 0.178360409188664, 0.150089138729099, 0.134029707705111, 
0.120565772385725, 0.229528019076799, 0.0697390623585822, 0.10198296142804, 
0.192570247620748, 0.245119340816501, 0.115758491252085, 0.195889106965538, 
0.138158444053898, 0.231674956423303, 0.0966027636728098, 0.141766843553559, 
0.215113054221126, 0.135495862386357, 0.314351616201071, 0.133076845003381, 
0.168262801476855, 0.00457531564104158, 0.0986664889666124, 0.242490501823923, 
0.152124266735103, 0.201716489655936, 0.0786665142081486, 0.162659186669921, 
0.0279454048764536, 0.134992616527726, 0.034801030826966), `RETURN ON EQUITY` = c(0.263580248064511, 
0.0444871419402714, 0.241012793134955, 0.191549228659637, 0.0734886226747657, 
0.186089113513671, 0.544673844576945, -0.0248396423765173, 0.109257634896201, 
0.161190875342999, 0.298045789765326, 0.163962072531003, 0.162274234481587, 
0.160460729376603, 0.31640703656353, 0.0847926292565323, 0.102628180483108, 
0.192493344561337, 0.244023637469295, 0.0858503015508329, 0.212255623707772, 
0.13604566269794, 0.250952374400512, 0.101551944180348, 0.235835707060263, 
0.386487527831846, 0.128000474163853, 0.327092350614891, 0.139632557156543, 
0.227780755169442, 0.0080632167674627, 0.165179790324242, 0.298742298993181, 
0.165391606109475, 0.214205739228479, 0.084552656304169, 0.157224605882577, 
0.212343248849882, 0.146717984157146, 0.113062299136044), `FARM OPERATING PROFIT MARGIN RATIO` = c(0.55, 
0.18, 0.29, 0.33, 0.12, 0.46, 0.24, -0.1, 0.14, 0.23, 0.2, 0.22, 
0.44, 0.25, 0.33, 0.13, 0.36, 0.44, 0.33, 0.05, 0.32, 0.16, 0.52, 
0.3, 0.24, 0.35, 0.2, 0.32, 0.38, 0.29, 0.02, 0.24, 0.36, 0.25, 
0.4, 0.18, 0.32, -0.01, 0.08, -0.01), `ASSET TURNOVER RATIO` = c(0.64, 
0.2, 0.55, 0.58, 0.29, 0.64, 1.88, 0.39, 0.31, 0.34, 0.72, 0.58, 
0.38, 0.41, 0.96, 0.38, 0.26, 0.4, 0.62, 0.41, 0.55, 0.67, 0.53, 
0.29, 0.51, 0.86, 0.38, 0.94, 0.4, 0.54, 0.65, 0.49, 0.7, 0.49, 
0.41, 0.3, 0.47, 0.62, 0.87, 0.79), `OPERATING EXPENSE RATIO` = c(0.29, 
0.57, 0.61, 0.52, 0.69, 0.48, 0.57, 0.89, 0.64, 0.57, 0.72, 0.62, 
0.45, 0.55, 0.52, 0.69, 0.49, 0.43, 0.5, 0.75, 0.53, 0.69, 0.38, 
0.54, 0.6, 0.54, 0.55, 0.56, 0.5, 0.57, 0.87, 0.61, 0.54, 0.63, 
0.44, 0.61, 0.56, 0.82, 0.77, 0.83), `DEPRECIATION EXPENSE RATIO` = c(0.08, 
0.16, 0.01, 0.05, 0.07, 0.02, 0.03, 0.09, 0.02, 0.06, 0.03, 0.1, 
0.04, 0.08, 0.06, 0.1, 0.06, 0.05, 0.03, 0.04, 0.08, 0.09, 0.04, 
0.06, 0.05, 0.01, 0.11, 0.05, 0.04, 0.06, 0.05, 0.08, 0.04, 0.03, 
0.06, 0.08, 0.01, 0.1, 0.05, 0.04), `INTEREST EXPENSE RATIO` = c(0.01, 
0, 0.03, 0.07, 0.08, 0, 0, 0.06, 0, 0.02, 0.04, 0.01, 0.02, 0.06, 
0.03, 0.06, 0, 0, 0.03, 0.01, 0.02, 0, 0.06, 0.01, 0.05, 0, 0.07, 
0, 0.04, 0.01, 0.08, 0.1, 0.04, 0.02, 0.03, 0.02, 0.04, 0.04, 
0.01, 0.09), `NET FARM INCOME RATIO` = c(0.62, 0.27, 0.35, 0.36, 
0.16, 0.5, 0.39, -0.04, 0.34, 0.35, 0.22, 0.28, 0.49, 0.31, 0.39, 
0.15, 0.45, 0.51, 0.44, 0.2, 0.37, 0.21, 0.52, 0.39, 0.29, 0.45, 
0.27, 0.39, 0.43, 0.36, 0.01, 0.21, 0.37, 0.32, 0.47, 0.28, 0.38, 
0.05, 0.17, 0.05)), class = c("tbl_df", "tbl", "data.frame"), row.names = c(NA, 
-40L))
gm007
  • 547
  • 4
  • 11
  • Can you provide a reproducible example of your data ? see: https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – dc37 Dec 23 '19 at 22:12
  • What are you trying to compare ? for example `CURRENT RATIO` with `DEBT TO TOTAL ASSET RATIO` ? – dc37 Dec 23 '19 at 22:38
  • I’m trying to compare each ratio on both samples and see if their different. That is, is current ratio in the small sample statistically different from the current ratio in the large sample. I won’t to do the test for all the ratios. – gm007 Dec 23 '19 at 22:40

1 Answers1

2

If you take a look on the description of wilcox.test function, you can read:

Details

The formula interface is only applicable for the 2-sample tests. If only x is given, or if both x and y are given and paired is TRUE, a Wilcoxon signed rank test of the null that the distribution of x (in the one sample case) or of x - y (in the paired two sample case) is symmetric about mu is performed.

Otherwise, if both x and y are given and paired is FALSE, a Wilcoxon rank sum test (equivalent to the Mann-Whitney test: see the Note) is carried out. In this case, the null hypothesis is that the distributions of x and y differ by a location shift of mu and the alternative is that they differ by some other location shift (and the one-sided alternative "greater" is that x is shifted to the right of y).

So, in your case, you can simply do:

> wilcox.test(df_large$`CURRENT RATIO`, df$`CURRENT RATIO`)

    Wilcoxon rank sum test with continuity correction

data:  df_large$`CURRENT RATIO` and df$`CURRENT RATIO`
W = 521, p-value = 0.05869
alternative hypothesis: true location shift is not equal to 0

If you want to perform test for all columns, you cna have the use of a for loop by doing this:

df = data.frame(df)
df_large = data.frame(df_large)
list_ratio = colnames(df)[grep("RATIO",colnames(df))]
output_test = NULL
for(i in 1:length(list_ratio)) 
{
  output_test = c(output_test,wilcox.test(df[,list_ratio[i]],df_large[,list_ratio[i]])$p.value)
}

final_result = data.frame(list_ratio,output_test)

And you get:

> final_result
                           list_ratio  output_test
1                       CURRENT.RATIO 5.868975e-02
2           DEBT.TO.TOTAL.ASSET.RATIO 1.493298e-03
3            DEBT.TO.FARM.ASSET.RATIO 1.097900e-02
4               EQUITY.TO.ASSET.RATIO 3.615603e-03
5                DEBT.TO.EQUITY.RATIO 1.269196e-03
6  FARM.OPERATING.PROFIT.MARGIN.RATIO 7.001144e-05
7                ASSET.TURNOVER.RATIO 3.705217e-10
8             OPERATING.EXPENSE.RATIO 4.287677e-04
9          DEPRECIATION.EXPENSE.RATIO 2.783710e-08
10             INTEREST.EXPENSE.RATIO 3.064970e-04
11              NET.FARM.INCOME.RATIO 1.786960e-06

EDIT: use of Map (from @r2evans)

As suggested by @r2evans in comments, you can avoid the for loop by using Map:

list_ratio <- grep("RATIO",colnames(df), value=TRUE)
Map(function(a,b) wilcox.test(a, b)$p.value, df[list_ratio], df_large[list_ratio])

$`CURRENT RATIO`
[1] 0.05868975

$`DEBT TO TOTAL ASSET RATIO`
[1] 0.001493298

$`DEBT TO FARM ASSET RATIO`
[1] 0.010979

$`EQUITY TO ASSET RATIO`
[1] 0.003615603

$`DEBT TO EQUITY RATIO`
[1] 0.001269196

$`FARM OPERATING PROFIT MARGIN RATIO`
[1] 7.001144e-05

$`ASSET TURNOVER RATIO`
[1] 3.705217e-10

$`OPERATING EXPENSE RATIO`
[1] 0.0004287677

$`DEPRECIATION EXPENSE RATIO`
[1] 2.78371e-08

$`INTEREST EXPENSE RATIO`
[1] 0.000306497

$`NET FARM INCOME RATIO`
[1] 1.78696e-06

If you want to present this output as a data.frame, you can do:

pvalue <- unlist(Map(function(a,b) wilcox.test(a, b)$p.value, df[list_ratio], df_large[list_ratio]))
pvalue = as.data.frame(pvalue)

         pvalue
CURRENT RATIO                      5.868975e-02
DEBT TO TOTAL ASSET RATIO          1.493298e-03
DEBT TO FARM ASSET RATIO           1.097900e-02
EQUITY TO ASSET RATIO              3.615603e-03
DEBT TO EQUITY RATIO               1.269196e-03
FARM OPERATING PROFIT MARGIN RATIO 7.001144e-05
ASSET TURNOVER RATIO               3.705217e-10
OPERATING EXPENSE RATIO            4.287677e-04
DEPRECIATION EXPENSE RATIO         2.783710e-08
INTEREST EXPENSE RATIO             3.064970e-04
NET FARM INCOME RATIO              1.786960e-06
dc37
  • 15,840
  • 4
  • 15
  • 32
  • Yes! This is what I was looking for. Thank you. – gm007 Dec 23 '19 at 23:01
  • Great ! Glad I was able to help you with that. – dc37 Dec 23 '19 at 23:01
  • 2
    A more idiomatic way (instead of `for`) would be to use `Map(function(a,b) wilcox.test(a, b)$p.value, df_small[list_ratio], df_large[list_ratio])`. (Similarly, `list_ratio <- grep("RATIO",colnames(df_small), value=TRUE)`, the value= argument makes several things a little more concise/easier.) – r2evans Dec 24 '19 at 01:36
  • That's a really nice way to do it ! – dc37 Dec 24 '19 at 03:05
  • How would I have the test produce a data frame for every year (2008-2017)? – gm007 Dec 26 '19 at 22:35