<div dir="ltr"><div><div><div><div><div>Thank you for your quick reply!<br></div>I corrected the issue mentioned by you, but I get the same error. <br></div><div>It must be a beginner's issue.<br><br></div><div>The data is quite big, but this kind of output could be produced with any random data, I guess.<br>

</div><div><br></div>Namely, using the Rcpp, I get Am as:<br>
</div>       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13]<br>  [1,] 0.1825   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [2,] 0.2050   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [3,] 0.2083   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [4,] 0.2100   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [5,] 0.2133   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [6,] 0.2100   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [7,] 0.2025   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [8,] 0.2020   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [9,] 0.2025   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [10,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [11,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


 [12,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [13,] 0.2000   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [14,]     NA   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


</div> and only NAs everywhere else<br><br></div>while I get this using the pure R code:<br><font size="1">  X0   X0.1   X0.2   X0.3   X0.4   X0.5   X0.6   X0.7   X0.8   X0.9  X0.10  X0.11  X0.12<br>1  0.1811 0.1797 0.1784 0.1770 0.1757 0.1743 0.1730 0.1717 0.1704 0.1691 0.1678 0.1665 0.1653<br>


2  0.2021 0.1993 0.1964 0.1937 0.1909 0.1883 0.1856 0.1830 0.1804 0.1779 0.1753 0.1729 0.1704<br>3  0.2044 0.2007 0.1969 0.1933 0.1897 0.1862 0.1828 0.1794 0.1760 0.1728 0.1696 0.1664 0.1634<br>4  0.2056 0.2013 0.1970 0.1929 0.1888 0.1849 0.1810 0.1772 0.1735 0.1698 0.1662 0.1627 0.1593<br>


5  0.2085 0.2039 0.1993 0.1949 0.1905 0.1863 0.1821 0.1780 0.1741 0.1702 0.1664 0.1626 0.1590<br>6  0.2052 0.2006 0.1960 0.1915 0.1872 0.1829 0.1788 0.1747 0.1707 0.1669 0.1631 0.1594 0.1557<br>7  0.2004 0.1982 0.1961 0.1941 0.1920 0.1900 0.1880 0.1860 0.1840 0.1820 0.1801 0.1782 0.1763<br>


8  0.1993 0.1967 0.1941 0.1916 0.1891 0.1866 0.1841 0.1817 0.1793 0.1769 0.1746 0.1723 0.1701<br>9  0.2005 0.1985 0.1966 0.1947 0.1928 0.1909 0.1890 0.1871 0.1853 0.1835 0.1817 0.1799 0.1781<br>10 0.1854 0.1840 0.1827 0.1814 0.1801 0.1788 0.1775 0.1763 0.1750 0.1737 0.1725 0.1713 0.1700</font><br>


<font size="1">11 0.1855 0.1843 0.1831 0.1819 0.1807 0.1795 0.1784 0.1772 0.1761 0.1749 0.1738 0.1727 0.1715<br>12 0.1849 0.1831 0.1813 0.1795 0.1778 0.1760 0.1743 0.1726 0.1709 0.1692 0.1676 0.1659 0.1643<br>13 0.1964 0.1928 0.1893 0.1859 0.1826 0.1793 0.1760 0.1728 0.1697 0.1666 0.1636 0.1607 0.1578<br>


14 0.1733 0.1716 0.1700 0.1683 0.1667 0.1651 0.1635 0.1619 0.1603 0.1587 0.1572 0.1557 0.1542<br>15 0.1814 0.1795 0.1777 0.1759 0.1741 0.1723 0.1705 0.1687 0.1670 0.1653 0.1636 0.1619 0.1602<br>16 0.1809 0.1784 0.1761 0.1737 0.1714 0.1691 0.1669 0.1646 0.1625 0.1603 0.1582 0.1560 0.1540<br>


17 0.1828 0.1796 0.1765 0.1734 0.1704 0.1675 0.1646 0.1617 0.1589 0.1562 0.1534 0.1508 0.1482<br>18 0.1768 0.1744 0.1720 0.1696 0.1673 0.1651 0.1628 0.1606 0.1584 0.1563 0.1541 0.1520 0.1500<br>19 0.1537 0.1534 0.1531 0.1528 0.1525 0.1522 0.1519 0.1516 0.1513 0.1510 0.1507 0.1504 0.1501<br>


20 0.1412 0.1425 0.1437 0.1450 0.1463 0.1476 0.1489 0.1502 0.1515 0.1529 0.1542 0.1556 0.1570<br>21 0.1460 0.1469 0.1479 0.1489 0.1498 0.1508 0.1518 0.1528 0.1538 0.1548 0.1558 0.1569 0.1579<br>22 0.1312 0.1323 0.1335 0.1347 0.1359 0.1372 0.1384 0.1396 0.1409 0.1421 0.1434 0.1447 0.1460<br>


23 0.1555 0.1544 0.1532 0.1521 0.1509 0.1498 0.1487 0.1476 0.1465 0.1454 0.1443 0.1432 0.1421<br>24 0.1562 0.1556 0.1551 0.1546 0.1541 0.1535 0.1530 0.1525 0.1520 0.1515 0.1509 0.1504 0.1499<br>25 0.1561 0.1556 0.1551 0.1545 0.1540 0.1534 0.1529 0.1523 0.1518 0.1513 0.1507 0.1502 0.1497<br>


26 0.1332 0.1338 0.1345 0.1351 0.1358 0.1365 0.1371 0.1378 0.1385 0.1392 0.1399 0.1406 0.1413<br>27 0.1548 0.1546 0.1544 0.1542 0.1540 0.1538 0.1536 0.1534 0.1532 0.1530 0.1528 0.1526 0.1524<br>28 0.1547 0.1543 0.1540 0.1537 0.1534 0.1530 0.1527 0.1524 0.1521 0.1517 0.1514 0.1511 0.1508<br>


29 0.1552 0.1554 0.1556 0.1558 0.1560 0.1563 0.1565 0.1567 0.1569 0.1571 0.1573 0.1575 0.1577<br>30 0.1571 0.1575 0.1579 0.1583 0.1587 0.1591 0.1594 0.1598 0.1602 0.1606 0.1610 0.1614 0.1618<br>31 0.1571 0.1575 0.1580 0.1584 0.1588 0.1593 0.1597 0.1601 0.1605 0.1610 0.1614 0.1618 0.1623<br>


32 0.1574 0.1581 0.1588 0.1594 0.1601 0.1608 0.1615 0.1622 0.1629 0.1636 0.1644 0.1651 0.1658<br>33 0.1580 0.1594 0.1607 0.1621 0.1635 0.1648 0.1662 0.1677 0.1691 0.1705 0.1720 0.1734 0.1749</font></div><div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Mar 28, 2014 at 1:41 PM, Petre Caraiani <span dir="ltr"><<a href="mailto:petre.caraiani@gmail.com" target="_blank">petre.caraiani@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div><div><div><div>Thank you for your quick reply!<br></div>I corrected the issue mentioned by you, but I get the same error. <br></div><div>It must be a beginner's issue.<br><br></div><div>The data is quite big, but this kind of output could be produced with any random data, I guess.<br>

</div><div><br></div>Namely, using the Rcpp, I get Am as:<br>
</div>       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13]<br>  [1,] 0.1825   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [2,] 0.2050   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [3,] 0.2083   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [4,] 0.2100   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [5,] 0.2133   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [6,] 0.2100   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [7,] 0.2025   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>  [8,] 0.2020   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


  [9,] 0.2025   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [10,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [11,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


 [12,] 0.1867   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [13,] 0.2000   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br> [14,]     NA   NA   NA   NA   NA   NA   NA   NA   NA    NA    NA    NA    NA<br>


</div> and only NAs everywhere else<br><br></div>while I get this using the pure R code:<br><font size="1">  X0   X0.1   X0.2   X0.3   X0.4   X0.5   X0.6   X0.7   X0.8   X0.9  X0.10  X0.11  X0.12<br>1  0.1811 0.1797 0.1784 0.1770 0.1757 0.1743 0.1730 0.1717 0.1704 0.1691 0.1678 0.1665 0.1653<br>


2  0.2021 0.1993 0.1964 0.1937 0.1909 0.1883 0.1856 0.1830 0.1804 0.1779 0.1753 0.1729 0.1704<br>3  0.2044 0.2007 0.1969 0.1933 0.1897 0.1862 0.1828 0.1794 0.1760 0.1728 0.1696 0.1664 0.1634<br>4  0.2056 0.2013 0.1970 0.1929 0.1888 0.1849 0.1810 0.1772 0.1735 0.1698 0.1662 0.1627 0.1593<br>


5  0.2085 0.2039 0.1993 0.1949 0.1905 0.1863 0.1821 0.1780 0.1741 0.1702 0.1664 0.1626 0.1590<br>6  0.2052 0.2006 0.1960 0.1915 0.1872 0.1829 0.1788 0.1747 0.1707 0.1669 0.1631 0.1594 0.1557<br>7  0.2004 0.1982 0.1961 0.1941 0.1920 0.1900 0.1880 0.1860 0.1840 0.1820 0.1801 0.1782 0.1763<br>


8  0.1993 0.1967 0.1941 0.1916 0.1891 0.1866 0.1841 0.1817 0.1793 0.1769 0.1746 0.1723 0.1701<br>9  0.2005 0.1985 0.1966 0.1947 0.1928 0.1909 0.1890 0.1871 0.1853 0.1835 0.1817 0.1799 0.1781<br>10 0.1854 0.1840 0.1827 0.1814 0.1801 0.1788 0.1775 0.1763 0.1750 0.1737 0.1725 0.1713 0.1700</font><br>


<font size="1">11 0.1855 0.1843 0.1831 0.1819 0.1807 0.1795 0.1784 0.1772 0.1761 0.1749 0.1738 0.1727 0.1715<br>12 0.1849 0.1831 0.1813 0.1795 0.1778 0.1760 0.1743 0.1726 0.1709 0.1692 0.1676 0.1659 0.1643<br>13 0.1964 0.1928 0.1893 0.1859 0.1826 0.1793 0.1760 0.1728 0.1697 0.1666 0.1636 0.1607 0.1578<br>


14 0.1733 0.1716 0.1700 0.1683 0.1667 0.1651 0.1635 0.1619 0.1603 0.1587 0.1572 0.1557 0.1542<br>15 0.1814 0.1795 0.1777 0.1759 0.1741 0.1723 0.1705 0.1687 0.1670 0.1653 0.1636 0.1619 0.1602<br>16 0.1809 0.1784 0.1761 0.1737 0.1714 0.1691 0.1669 0.1646 0.1625 0.1603 0.1582 0.1560 0.1540<br>


17 0.1828 0.1796 0.1765 0.1734 0.1704 0.1675 0.1646 0.1617 0.1589 0.1562 0.1534 0.1508 0.1482<br>18 0.1768 0.1744 0.1720 0.1696 0.1673 0.1651 0.1628 0.1606 0.1584 0.1563 0.1541 0.1520 0.1500<br>19 0.1537 0.1534 0.1531 0.1528 0.1525 0.1522 0.1519 0.1516 0.1513 0.1510 0.1507 0.1504 0.1501<br>


20 0.1412 0.1425 0.1437 0.1450 0.1463 0.1476 0.1489 0.1502 0.1515 0.1529 0.1542 0.1556 0.1570<br>21 0.1460 0.1469 0.1479 0.1489 0.1498 0.1508 0.1518 0.1528 0.1538 0.1548 0.1558 0.1569 0.1579<br>22 0.1312 0.1323 0.1335 0.1347 0.1359 0.1372 0.1384 0.1396 0.1409 0.1421 0.1434 0.1447 0.1460<br>


23 0.1555 0.1544 0.1532 0.1521 0.1509 0.1498 0.1487 0.1476 0.1465 0.1454 0.1443 0.1432 0.1421<br>24 0.1562 0.1556 0.1551 0.1546 0.1541 0.1535 0.1530 0.1525 0.1520 0.1515 0.1509 0.1504 0.1499<br>25 0.1561 0.1556 0.1551 0.1545 0.1540 0.1534 0.1529 0.1523 0.1518 0.1513 0.1507 0.1502 0.1497<br>


26 0.1332 0.1338 0.1345 0.1351 0.1358 0.1365 0.1371 0.1378 0.1385 0.1392 0.1399 0.1406 0.1413<br>27 0.1548 0.1546 0.1544 0.1542 0.1540 0.1538 0.1536 0.1534 0.1532 0.1530 0.1528 0.1526 0.1524<br>28 0.1547 0.1543 0.1540 0.1537 0.1534 0.1530 0.1527 0.1524 0.1521 0.1517 0.1514 0.1511 0.1508<br>


29 0.1552 0.1554 0.1556 0.1558 0.1560 0.1563 0.1565 0.1567 0.1569 0.1571 0.1573 0.1575 0.1577<br>30 0.1571 0.1575 0.1579 0.1583 0.1587 0.1591 0.1594 0.1598 0.1602 0.1606 0.1610 0.1614 0.1618<br>31 0.1571 0.1575 0.1580 0.1584 0.1588 0.1593 0.1597 0.1601 0.1605 0.1610 0.1614 0.1618 0.1623<br>


32 0.1574 0.1581 0.1588 0.1594 0.1601 0.1608 0.1615 0.1622 0.1629 0.1636 0.1644 0.1651 0.1658<br>33 0.1580 0.1594 0.1607 0.1621 0.1635 0.1648 0.1662 0.1677 0.1691 0.1705 0.1720 0.1734 0.1749</font><br></div><div class="HOEnZb">
<div class="h5"><div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Mar 28, 2014 at 1:25 PM, Dirk Eddelbuettel <span dir="ltr"><<a href="mailto:edd@debian.org" target="_blank">edd@debian.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div><div><br>
On 28 March 2014 at 10:30, Petre Caraiani wrote:<br>
| Hello,<br>
| The following code works well in R:<br>
| attach(dataqtr)<br>
|<br>
| dataqtr <- data.table(dataqtr)<br>
| setkeyv(dataqtr,c("gvkey","qtr"))<br>
|<br>
| vec_growth <- data.frame(0,0,0,0,0,0,0,0,0,0,0,0,0)<br>
| vec_eps    <- data.frame(0,0,0,0,0,0,0,0,0,0,0,0,0)<br>
|<br>
| T <- 15<br>
|<br>
| for (i in 1:nrow(dataqtr)) {<br>
|   vec_growth[i,] <- ( dataqtr[i,LTG] * exp(1:(T-2)/(T-1)*log( dataqtr<br>
| [i,meanLTG] / dataqtr[i,LTG] )))<br>
|  <br>
| }<br>
|<br>
|<br>
| However I am not able to reproduce it using the following Rccp code:<br>
|<br>
| a<- dataqtr[,LTG]<br>
| b<- dataqtr[,meanLTG]<br>
|<br>
| src <-'<br>
|  Rcpp::NumericVector a(aa);<br>
|  Rcpp::NumericVector b(bb);<br>
|  Rcpp::NumericMatrix Am (A);<br>
|  int n = a.size();<br>
|  int m = b.size();<br>
|  int T=15;<br>
|  <br>
|  int nrows = Am.nrow();<br>
|  int ncol  = Am.ncol();<br>
|  <br>
|      for (int ii = 1; ii < nrows; ii++) {<br>
|         for (int jj = 1; jj<ncol; jj++)  {<br>
|         Am[ii,jj] =  a[jj] * exp(jj/(T-1)*log( b[jj] / a[jj] ));<br>
|         }}<br>
| return Am;<br>
| '<br>
| fun <- cxxfunction(signature(aa="numeric", bb="numeric",A="numeric"), body =<br>
| src, plugin="Rcpp")<br>
|<br>
| A<-matrix(data=NA,nrow=100,ncol=13)<br>
| fun(a,b,A)<br>
|<br>
| I don't understand the error.<br>
<br>
</div></div>What is the error you are getting and do not understand? Can you share it?<br>
<br>
Is it __build-time__ ?  Is it __run-time__ ?<br>
<br>
At a first glance both your for loops are wrong as indices in C and C++ have<br>
to go from 0 to n-1, not 1 to n.<br>
<span><font color="#888888"><br>
Dirk<br>
<br>
--<br>
Dirk Eddelbuettel | <a href="mailto:edd@debian.org" target="_blank">edd@debian.org</a> | <a href="http://dirk.eddelbuettel.com" target="_blank">http://dirk.eddelbuettel.com</a><br>
</font></span></blockquote></div><br></div>
</div></div></blockquote></div><br></div>