I’m trying to calculate the slope in R using the lm() function. I have a data set that contains the points X1-X20 with calculated area and mean by log function. I saw this post, but could not replicate it on my dataset. How can I calculate and create a new column for slope in data frame?
My approach has been to do this:
coefLM <- function(x) {
coef(lm(log(mean)~log(area), tar.all[-1,]))[2]
And getting the following error message:
coefs <- sapply(tar.all[-1,], coefLM)
Error in eval(predvars, data, env) :
numeric 'envir' arg not of length one
Here is my data frame, name tar.all:
> tar.all
X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 X16 X17 X18 X19 X20
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1481 2087 2231 894 2633 1437 2079 2513 2836 494 1988 397 1611 2470 2278 1837 1930 2878 1563 2738
3 2073 2280 1913 421 1913 1449 1794 1381 2494 2255 1002 1930 2270 442 795 1656 1091 526 2608 442
4 2485 2083 1736 1060 2566 1643 970 2482 2730 1851 1203 2054 2859 2479 2485 2166 2436 502 2105 2598
5 2224 1191 1881 2743 2557 1229 249 2744 1916 629 1765 2197 2728 2632 2190 1633 2336 2462 2514 368
6 2260 2466 1480 2096 1389 2020 1570 2327 2700 2362 2502 676 851 1966 2698 1599 2570 2249 1650 2266
7 2526 2229 2463 2227 2341 2635 443 2243 2357 1853 1821 1072 2344 2102 1767 1539 2327 2485 2441 2382
8 2832 1755 2207 2696 2102 2593 2497 1889 1406 968 2467 2146 1871 2595 2670 946 1246 1893 2334 2106
9 1817 1234 1905 2393 2794 2292 2239 2583 943 1377 2017 1886 2182 2463 1376 1481 2162 2309 2033 1918
10 1540 2312 1062 1755 1864 1260 2858 1457 1574 2265 2821 2307 2476 2227 2456 2403 2539 2787 1824 2587
11 1948 1350 2625 2176 2138 2771 2405 1185 2220 1702 1171 1469 1240 2693 2520 1636 2280 2137 1367 2815
12 917 2251 2123 1695 1746 2779 1773 1988 2243 2217 1685 1860 2685 1445 2777 2344 1923 994 2799 1146
13 2210 2436 2198 1806 2357 1873 2469 2113 2827 2349 1325 1582 1802 1588 2545 2169 2376 1887 2877 1454
14 1894 2062 1799 1757 2479 2428 2078 2184 1213 1991 1721 2708 2146 1559 2207 2050 2402 2146 1539 2680
15 2759 1894 2486 1778 2405 1459 1593 1747 2146 1999 1385 2534 1653 1504 2425 1830 2578 1474 1707 1549
16 2629 2387 1727 2408 1385 1768 2358 2136 1524 2502 1686 2234 1934 2328 2368 1814 2421 2408 2058 2409
17 2726 2048 2633 1830 1776 1112 2421 2197 1839 1437 1707 1796 2129 2344 1943 2457 2266 1813 2467 2259
18 2368 2198 2579 1987 2198 1974 2551 2212 2221 1752 2573 2237 2692 1929 1946 2386 2298 2255 1929 1937
19 2192 2011 2601 1786 1976 1946 2497 1752 2215 2081 1934 2352 2031 2036 1706 2065 1585 2077 2519 2068
20 1946 2331 2498 2547 2339 2500 1955 2118 2136 2547 2692 2355 2436 2367 1558 2113 2230 2123 2395 2330
21 2720 2175 2160 2286 2418 2170 2300 2439 1944 2440 2303 2146 1813 1720 2201 2684 2731 2581 2188 2096
22 1944 2152 1952 1916 2010 2265 1701 2438 1815 1736 2224 1769 2559 2318 1693 2135 1914 2711 1820 2454
23 2248 2300 2074 2129 2115 1998 2111 1939 2669 2423 2154 1837 2263 1983 2133 1930 2055 1965 2268 2617
24 2105 1941 2688 2108 2271 2316 2178 2171 2242 1939 1941 2318 2006 2066 2234 2123 1859 1930 2546 1939
25 2159 2133 2543 2113 1958 2459 2543 1836 1828 2189 2313 2405 1991 2272 2279 1959 2658 2243 2216 2134
26 2153 2174 2324 2277 2240 2148 2343 1673 1855 2437 2535 2483 2141 1939 2558 2303 2329 2251 2411 2470
27 2011 2098 1658 2058 1853 2503 2209 1774 1771 2116 1925 2054 2225 2101 1938 2322 2089 2129 2119 2132
28 2095 2126 2392 1920 2100 2384 2353 2100 2574 2249 2233 2382 2096 2186 1896 2243 2096 2033 2058 1922
29 1907 2284 1720 1673 1695 2141 2394 2194 2377 2148 1738 2584 2469 2080 2590 1698 2285 2226 2246 1988
30 2527 2015 1891 2151 2133 2262 1716 2287 2304 1981 2060 2154 2225 1981 2548 2021 1820 2021 2428 1651
31 1621 2421 2266 2445 2078 2078 1739 2054 2355 1745 2255 2050 2278 2024 1705 1692 1816 2274 2204 2266
32 2015 1692 1943 2097 1867 2243 2466 1990 2165 2101 1796 1709 1997 2018 1815 2421 2226 1848 2253 1816
33 2383 2455 2344 1895 2243 1866 2218 2031 2238 1877 2078 2077 2165 2150 2372 2253 2350 1816 2344 1835
34 2241 1962 2431 2443 1941 2429 1909 2293 2145 2282 1919 2044 2289 2131 1941 2088 1974 2095 2224 2095
35 2009 2101 2037 2453 2418 2418 2345 2293 2026 2037 2264 2330 2158 2342 2037 1842 2264 2031 2101 2342
36 2420 2199 2428 1954 2443 2358 2392 2259 2264 2408 1997 2197 2193 2269 2077 2147 2199 2030 2420 1900
37 2247 2318 2066 2318 2318 2340 2305 2095 2318 2426 2212 2420 2167 2431 2199 1910 2318 2007 2420 2322
38 2029 2017 2174 2145 1901 1922 2196 2017 2260 2121 2005 2053 2133 2264 2353 1974 2243 2200 1954 2256
39 2109 2097 2097 1933 2318 2308 2328 2097 2255 2326 2243 2235 2258 2091 2109 2326 2175 2235 2175 2109
40 1979 1992 2226 1992 2258 2228 2306 2226 2306 2316 2145 2357 2081 2344 2081 2226 1979 2336 2230 1979
41 2165 2083 2206 2233 2218 2092 2092 2197 2206 1899 2000 2092 2202 2047 2099 2017 1896 2233 2092 2246
42 2181 2198 2160 2160 2169 2157 2070 2160 2192 2070 2199 2027 2173 2174 2010 1996 1960 2063 2061 2077
43 2064 2064 2167 2096 2168 2187 2195 2167 2163 2209 1891 2057 2172 2199 2175 2163 2064 2168 2150 2057
area mean sd
1 0.00000 0.00 0.00000
2 83.29863 1918.75 723.03162
3 333.19450 1536.75 732.90589
4 749.68763 2024.65 654.95458
5 1332.77801 1909.40 793.58662
6 2082.46564 1984.85 580.42065
7 2998.75052 2079.85 542.44527
8 4081.63265 2060.95 567.40884
9 5331.11204 1970.20 483.03314
10 6747.18867 2118.70 538.90748
11 8329.86256 1992.40 562.72920
12 10079.13369 1969.50 569.32227
13 11995.00208 2112.15 436.96288
14 14077.46772 2052.15 385.95368
15 16326.53061 1945.25 438.89021
16 18742.19075 2124.20 361.63672
17 21324.44815 2060.00 407.17667
18 24073.30279 2211.10 261.64437
19 26988.75469 2071.50 269.48733
20 30070.80383 2275.80 262.34902
21 33319.45023 2275.75 278.14931
22 36734.69388 2076.30 303.98288
23 40316.53478 2160.55 219.20322
24 44064.97293 2146.05 214.58760
25 47980.00833 2211.55 232.51723
26 52061.64098 2252.20 227.88746
27 56309.87089 2054.25 197.28496
28 60724.69804 2171.90 179.34938
29 65306.12245 2121.85 300.51032
30 70054.14411 2108.80 244.39993
31 74968.76302 2068.30 263.49855
32 80049.97918 2023.90 222.17629
33 85297.79259 2149.50 205.11627
34 90712.20325 2143.80 177.62663
35 96293.21116 2192.40 174.34853
36 102040.81633 2227.70 169.91332
37 107955.01874 2257.85 145.67566
38 114035.81841 2110.85 130.93039
39 120283.21533 2191.20 108.56800
40 126697.20950 2179.35 138.17505
41 133277.80092 2115.75 106.23404
42 140024.98959 2112.85 76.02166
43 146938.77551 2128.80 76.92895
[ reached 'max' / getOption("max.print") -- omitted 7 rows ]
> str(tar.all)
'data.frame': 50 obs. of 23 variables:
$ X1 : num 0 1481 2073 2485 2224 ...
$ X2 : num 0 2087 2280 2083 1191 ...
$ X3 : num 0 2231 1913 1736 1881 ...
$ X4 : num 0 894 421 1060 2743 ...
$ X5 : num 0 2633 1913 2566 2557 ...
$ X6 : num 0 1437 1449 1643 1229 ...
$ X7 : num 0 2079 1794 970 249 ...
$ X8 : num 0 2513 1381 2482 2744 ...
$ X9 : num 0 2836 2494 2730 1916 ...
$ X10 : num 0 494 2255 1851 629 ...
$ X11 : num 0 1988 1002 1203 1765 ...
$ X12 : num 0 397 1930 2054 2197 ...
$ X13 : num 0 1611 2270 2859 2728 ...
$ X14 : num 0 2470 442 2479 2632 ...
$ X15 : num 0 2278 795 2485 2190 ...
$ X16 : num 0 1837 1656 2166 1633 ...
$ X17 : num 0 1930 1091 2436 2336 ...
$ X18 : num 0 2878 526 502 2462 ...
$ X19 : num 0 1563 2608 2105 2514 ...
$ X20 : num 0 2738 442 2598 368 ...
$ area: num 0 83.3 333.2 749.7 1332.8 ...
$ mean: num 0 1919 1537 2025 1909 ...
$ sd : num 0 723 733 655 794 ...
How can I solve this error? Thank you in advance
Edit
Data in dput
format.
tar.all <-
structure(list(X1 = c(0L, 1481L, 2073L, 2485L, 2224L, 2260L,
2526L, 2832L, 1817L, 1540L, 1948L, 917L, 2210L, 1894L, 2759L,
2629L, 2726L, 2368L, 2192L, 1946L, 2720L, 1944L, 2248L, 2105L,
2159L, 2153L, 2011L, 2095L, 1907L, 2527L, 1621L, 2015L, 2383L,
2241L, 2009L, 2420L, 2247L, 2029L, 2109L, 1979L, 2165L, 2181L,
2064L), X2 = c(0L, 2087L, 2280L, 2083L, 1191L, 2466L, 2229L,
1755L, 1234L, 2312L, 1350L, 2251L, 2436L, 2062L, 1894L, 2387L,
2048L, 2198L, 2011L, 2331L, 2175L, 2152L, 2300L, 1941L, 2133L,
2174L, 2098L, 2126L, 2284L, 2015L, 2421L, 1692L, 2455L, 1962L,
2101L, 2199L, 2318L, 2017L, 2097L, 1992L, 2083L, 2198L, 2064L
), X3 = c(0L, 2231L, 1913L, 1736L, 1881L, 1480L, 2463L, 2207L,
1905L, 1062L, 2625L, 2123L, 2198L, 1799L, 2486L, 1727L, 2633L,
2579L, 2601L, 2498L, 2160L, 1952L, 2074L, 2688L, 2543L, 2324L,
1658L, 2392L, 1720L, 1891L, 2266L, 1943L, 2344L, 2431L, 2037L,
2428L, 2066L, 2174L, 2097L, 2226L, 2206L, 2160L, 2167L), X4 = c(0L,
894L, 421L, 1060L, 2743L, 2096L, 2227L, 2696L, 2393L, 1755L,
2176L, 1695L, 1806L, 1757L, 1778L, 2408L, 1830L, 1987L, 1786L,
2547L, 2286L, 1916L, 2129L, 2108L, 2113L, 2277L, 2058L, 1920L,
1673L, 2151L, 2445L, 2097L, 1895L, 2443L, 2453L, 1954L, 2318L,
2145L, 1933L, 1992L, 2233L, 2160L, 2096L), X5 = c(0L, 2633L,
1913L, 2566L, 2557L, 1389L, 2341L, 2102L, 2794L, 1864L, 2138L,
1746L, 2357L, 2479L, 2405L, 1385L, 1776L, 2198L, 1976L, 2339L,
2418L, 2010L, 2115L, 2271L, 1958L, 2240L, 1853L, 2100L, 1695L,
2133L, 2078L, 1867L, 2243L, 1941L, 2418L, 2443L, 2318L, 1901L,
2318L, 2258L, 2218L, 2169L, 2168L), X6 = c(0L, 1437L, 1449L,
1643L, 1229L, 2020L, 2635L, 2593L, 2292L, 1260L, 2771L, 2779L,
1873L, 2428L, 1459L, 1768L, 1112L, 1974L, 1946L, 2500L, 2170L,
2265L, 1998L, 2316L, 2459L, 2148L, 2503L, 2384L, 2141L, 2262L,
2078L, 2243L, 1866L, 2429L, 2418L, 2358L, 2340L, 1922L, 2308L,
2228L, 2092L, 2157L, 2187L), X7 = c(0L, 2079L, 1794L, 970L, 249L,
1570L, 443L, 2497L, 2239L, 2858L, 2405L, 1773L, 2469L, 2078L,
1593L, 2358L, 2421L, 2551L, 2497L, 1955L, 2300L, 1701L, 2111L,
2178L, 2543L, 2343L, 2209L, 2353L, 2394L, 1716L, 1739L, 2466L,
2218L, 1909L, 2345L, 2392L, 2305L, 2196L, 2328L, 2306L, 2092L,
2070L, 2195L), X8 = c(0L, 2513L, 1381L, 2482L, 2744L, 2327L,
2243L, 1889L, 2583L, 1457L, 1185L, 1988L, 2113L, 2184L, 1747L,
2136L, 2197L, 2212L, 1752L, 2118L, 2439L, 2438L, 1939L, 2171L,
1836L, 1673L, 1774L, 2100L, 2194L, 2287L, 2054L, 1990L, 2031L,
2293L, 2293L, 2259L, 2095L, 2017L, 2097L, 2226L, 2197L, 2160L,
2167L), X9 = c(0L, 2836L, 2494L, 2730L, 1916L, 2700L, 2357L,
1406L, 943L, 1574L, 2220L, 2243L, 2827L, 1213L, 2146L, 1524L,
1839L, 2221L, 2215L, 2136L, 1944L, 1815L, 2669L, 2242L, 1828L,
1855L, 1771L, 2574L, 2377L, 2304L, 2355L, 2165L, 2238L, 2145L,
2026L, 2264L, 2318L, 2260L, 2255L, 2306L, 2206L, 2192L, 2163L
), X10 = c(0L, 494L, 2255L, 1851L, 629L, 2362L, 1853L, 968L,
1377L, 2265L, 1702L, 2217L, 2349L, 1991L, 1999L, 2502L, 1437L,
1752L, 2081L, 2547L, 2440L, 1736L, 2423L, 1939L, 2189L, 2437L,
2116L, 2249L, 2148L, 1981L, 1745L, 2101L, 1877L, 2282L, 2037L,
2408L, 2426L, 2121L, 2326L, 2316L, 1899L, 2070L, 2209L), X11 = c(0L,
1988L, 1002L, 1203L, 1765L, 2502L, 1821L, 2467L, 2017L, 2821L,
1171L, 1685L, 1325L, 1721L, 1385L, 1686L, 1707L, 2573L, 1934L,
2692L, 2303L, 2224L, 2154L, 1941L, 2313L, 2535L, 1925L, 2233L,
1738L, 2060L, 2255L, 1796L, 2078L, 1919L, 2264L, 1997L, 2212L,
2005L, 2243L, 2145L, 2000L, 2199L, 1891L), X12 = c(0L, 397L,
1930L, 2054L, 2197L, 676L, 1072L, 2146L, 1886L, 2307L, 1469L,
1860L, 1582L, 2708L, 2534L, 2234L, 1796L, 2237L, 2352L, 2355L,
2146L, 1769L, 1837L, 2318L, 2405L, 2483L, 2054L, 2382L, 2584L,
2154L, 2050L, 1709L, 2077L, 2044L, 2330L, 2197L, 2420L, 2053L,
2235L, 2357L, 2092L, 2027L, 2057L), X13 = c(0L, 1611L, 2270L,
2859L, 2728L, 851L, 2344L, 1871L, 2182L, 2476L, 1240L, 2685L,
1802L, 2146L, 1653L, 1934L, 2129L, 2692L, 2031L, 2436L, 1813L,
2559L, 2263L, 2006L, 1991L, 2141L, 2225L, 2096L, 2469L, 2225L,
2278L, 1997L, 2165L, 2289L, 2158L, 2193L, 2167L, 2133L, 2258L,
2081L, 2202L, 2173L, 2172L), X14 = c(0L, 2470L, 442L, 2479L,
2632L, 1966L, 2102L, 2595L, 2463L, 2227L, 2693L, 1445L, 1588L,
1559L, 1504L, 2328L, 2344L, 1929L, 2036L, 2367L, 1720L, 2318L,
1983L, 2066L, 2272L, 1939L, 2101L, 2186L, 2080L, 1981L, 2024L,
2018L, 2150L, 2131L, 2342L, 2269L, 2431L, 2264L, 2091L, 2344L,
2047L, 2174L, 2199L), X15 = c(0L, 2278L, 795L, 2485L, 2190L,
2698L, 1767L, 2670L, 1376L, 2456L, 2520L, 2777L, 2545L, 2207L,
2425L, 2368L, 1943L, 1946L, 1706L, 1558L, 2201L, 1693L, 2133L,
2234L, 2279L, 2558L, 1938L, 1896L, 2590L, 2548L, 1705L, 1815L,
2372L, 1941L, 2037L, 2077L, 2199L, 2353L, 2109L, 2081L, 2099L,
2010L, 2175L), X16 = c(0L, 1837L, 1656L, 2166L, 1633L, 1599L,
1539L, 946L, 1481L, 2403L, 1636L, 2344L, 2169L, 2050L, 1830L,
1814L, 2457L, 2386L, 2065L, 2113L, 2684L, 2135L, 1930L, 2123L,
1959L, 2303L, 2322L, 2243L, 1698L, 2021L, 1692L, 2421L, 2253L,
2088L, 1842L, 2147L, 1910L, 1974L, 2326L, 2226L, 2017L, 1996L,
2163L), X17 = c(0L, 1930L, 1091L, 2436L, 2336L, 2570L, 2327L,
1246L, 2162L, 2539L, 2280L, 1923L, 2376L, 2402L, 2578L, 2421L,
2266L, 2298L, 1585L, 2230L, 2731L, 1914L, 2055L, 1859L, 2658L,
2329L, 2089L, 2096L, 2285L, 1820L, 1816L, 2226L, 2350L, 1974L,
2264L, 2199L, 2318L, 2243L, 2175L, 1979L, 1896L, 1960L, 2064L
), X18 = c(0L, 2878L, 526L, 502L, 2462L, 2249L, 2485L, 1893L,
2309L, 2787L, 2137L, 994L, 1887L, 2146L, 1474L, 2408L, 1813L,
2255L, 2077L, 2123L, 2581L, 2711L, 1965L, 1930L, 2243L, 2251L,
2129L, 2033L, 2226L, 2021L, 2274L, 1848L, 1816L, 2095L, 2031L,
2030L, 2007L, 2200L, 2235L, 2336L, 2233L, 2063L, 2168L), X19 = c(0L,
1563L, 2608L, 2105L, 2514L, 1650L, 2441L, 2334L, 2033L, 1824L,
1367L, 2799L, 2877L, 1539L, 1707L, 2058L, 2467L, 1929L, 2519L,
2395L, 2188L, 1820L, 2268L, 2546L, 2216L, 2411L, 2119L, 2058L,
2246L, 2428L, 2204L, 2253L, 2344L, 2224L, 2101L, 2420L, 2420L,
1954L, 2175L, 2230L, 2092L, 2061L, 2150L), X20 = c(0L, 2738L,
442L, 2598L, 368L, 2266L, 2382L, 2106L, 1918L, 2587L, 2815L,
1146L, 1454L, 2680L, 1549L, 2409L, 2259L, 1937L, 2068L, 2330L,
2096L, 2454L, 2617L, 1939L, 2134L, 2470L, 2132L, 1922L, 1988L,
1651L, 2266L, 1816L, 1835L, 2095L, 2342L, 1900L, 2322L, 2256L,
2109L, 1979L, 2246L, 2077L, 2057L), area = c(0, 83.29863, 333.1945,
749.68763, 1332.77801, 2082.46564, 2998.75052, 4081.63265, 5331.11204,
6747.18867, 8329.86256, 10079.13369, 11995.00208, 14077.46772,
16326.53061, 18742.19075, 21324.44815, 24073.30279, 26988.75469,
30070.80383, 33319.45023, 36734.69388, 40316.53478, 44064.97293,
47980.00833, 52061.64098, 56309.87089, 60724.69804, 65306.12245,
70054.14411, 74968.76302, 80049.97918, 85297.79259, 90712.20325,
96293.21116, 102040.81633, 107955.01874, 114035.81841, 120283.21533,
126697.2095, 133277.80092, 140024.98959, 146938.77551), mean = c(0,
1918.75, 1536.75, 2024.65, 1909.4, 1984.85, 2079.85, 2060.95,
1970.2, 2118.7, 1992.4, 1969.5, 2112.15, 2052.15, 1945.25, 2124.2,
2060, 2211.1, 2071.5, 2275.8, 2275.75, 2076.3, 2160.55, 2146.05,
2211.55, 2252.2, 2054.25, 2171.9, 2121.85, 2108.8, 2068.3, 2023.9,
2149.5, 2143.8, 2192.4, 2227.7, 2257.85, 2110.85, 2191.2, 2179.35,
2115.75, 2112.85, 2128.8), sd = c(0, 723.03162, 732.90589, 654.95458,
793.58662, 580.42065, 542.44527, 567.40884, 483.03314, 538.90748,
562.7292, 569.32227, 436.96288, 385.95368, 438.89021, 361.63672,
407.17667, 261.64437, 269.48733, 262.34902, 278.14931, 303.98288,
219.20322, 214.5876, 232.51723, 227.88746, 197.28496, 179.34938,
300.51032, 244.39993, 263.49855, 222.17629, 205.11627, 177.62663,
174.34853, 169.91332, 145.67566, 130.93039, 108.568, 138.17505,
106.23404, 76.02166, 76.92895)), class = "data.frame", row.names = c(NA,
-43L))