{
  "_id": "6a28d2f5732311cd8758d82e",
  "Package": "data.table",
  "Version": "1.18.99",
  "Title": "Extension of `data.frame`",
  "Description": "Fast aggregation of large data (e.g. 100GB in RAM), fast\nordered joins, fast add/modify/delete of columns by group using\nno copies at all, list columns, friendly and fast\ncharacter-separated-value read/write. Offers a natural and\nflexible syntax, for faster development.",
  "License": "MPL-2.0 | file LICENSE",
  "URL": "https://r-datatable.com, https://Rdatatable.gitlab.io/data.table,\nhttps://github.com/Rdatatable/data.table",
  "BugReports": "https://github.com/Rdatatable/data.table/issues",
  "VignetteBuilder": "litedown",
  "Encoding": "UTF-8",
  "ByteCompile": "TRUE",
  "Authors@R": "c(\nperson(\"Tyson\",\"Barrett\",        role=c(\"aut\",\"cre\"), email=\"t.barrett88@gmail.com\", comment = c(ORCID=\"0000-0002-2137-1391\")),\nperson(\"Matt\",\"Dowle\",           role=\"aut\",          email=\"mattjdowle@gmail.com\"),\nperson(\"Arun\",\"Srinivasan\",      role=\"aut\",          email=\"asrini@pm.me\"),\nperson(\"Jan\",\"Gorecki\",          role=\"aut\",          email=\"j.gorecki@wit.edu.pl\"),\nperson(\"Michael\",\"Chirico\",      role=\"aut\",          email=\"michaelchirico4@gmail.com\", comment = c(ORCID=\"0000-0003-0787-087X\")),\nperson(\"Toby\",\"Hocking\",         role=\"aut\",          email=\"toby.hocking@r-project.org\", comment = c(ORCID=\"0000-0002-3146-0865\")),\nperson(\"Benjamin\",\"Schwendinger\",role=\"aut\", comment = c(ORCID=\"0000-0003-3315-8114\")),\nperson(\"Ivan\", \"Krylov\",         role=\"aut\",          email=\"ikrylov@disroot.org\",   comment = c(ORCID=\"0000-0002-0172-3812\")),\nperson(\"Pasha\",\"Stetsenko\",      role=\"ctb\"),\nperson(\"Tom\",\"Short\",            role=\"ctb\"),\nperson(\"Steve\",\"Lianoglou\",      role=\"ctb\"),\nperson(\"Eduard\",\"Antonyan\",      role=\"ctb\"),\nperson(\"Markus\",\"Bonsch\",        role=\"ctb\"),\nperson(\"Hugh\",\"Parsonage\",       role=\"ctb\"),\nperson(\"Scott\",\"Ritchie\",        role=\"ctb\"),\nperson(\"Kun\",\"Ren\",              role=\"ctb\"),\nperson(\"Xianying\",\"Tan\",         role=\"ctb\"),\nperson(\"Rick\",\"Saporta\",         role=\"ctb\"),\nperson(\"Otto\",\"Seiskari\",        role=\"ctb\"),\nperson(\"Xianghui\",\"Dong\",        role=\"ctb\"),\nperson(\"Michel\",\"Lang\",          role=\"ctb\"),\nperson(\"Watal\",\"Iwasaki\",        role=\"ctb\"),\nperson(\"Seth\",\"Wenchel\",         role=\"ctb\"),\nperson(\"Karl\",\"Broman\",          role=\"ctb\"),\nperson(\"Tobias\",\"Schmidt\",       role=\"ctb\"),\nperson(\"David\",\"Arenburg\",       role=\"ctb\"),\nperson(\"Ethan\",\"Smith\",          role=\"ctb\"),\nperson(\"Francois\",\"Cocquemas\",   role=\"ctb\"),\nperson(\"Matthieu\",\"Gomez\",       role=\"ctb\"),\nperson(\"Philippe\",\"Chataignon\",  role=\"ctb\"),\nperson(\"Nello\",\"Blaser\",         role=\"ctb\"),\nperson(\"Dmitry\",\"Selivanov\",     role=\"ctb\"),\nperson(\"Andrey\",\"Riabushenko\",   role=\"ctb\"),\nperson(\"Cheng\",\"Lee\",            role=\"ctb\"),\nperson(\"Declan\",\"Groves\",        role=\"ctb\"),\nperson(\"Daniel\",\"Possenriede\",   role=\"ctb\"),\nperson(\"Felipe\",\"Parages\",       role=\"ctb\"),\nperson(\"Denes\",\"Toth\",           role=\"ctb\"),\nperson(\"Mus\",\"Yaramaz-David\",    role=\"ctb\"),\nperson(\"Ayappan\",\"Perumal\",      role=\"ctb\"),\nperson(\"James\",\"Sams\",           role=\"ctb\"),\nperson(\"Martin\",\"Morgan\",        role=\"ctb\"),\nperson(\"Michael\",\"Quinn\",        role=\"ctb\"),\nperson(given=\"@javrucebo\",       role=\"ctb\", comment=\"GitHub user\"),\nperson(\"Marc\",\"Halperin\",        role=\"ctb\"),\nperson(\"Roy\",\"Storey\",           role=\"ctb\"),\nperson(\"Manish\",\"Saraswat\",      role=\"ctb\"),\nperson(\"Morgan\",\"Jacob\",         role=\"ctb\"),\nperson(\"Michael\",\"Schubmehl\",    role=\"ctb\"),\nperson(\"Davis\",\"Vaughan\",        role=\"ctb\"),\nperson(\"Leonardo\",\"Silvestri\",   role=\"ctb\"),\nperson(\"Jim\",\"Hester\",           role=\"ctb\"),\nperson(\"Anthony\",\"Damico\",       role=\"ctb\"),\nperson(\"Sebastian\",\"Freundt\",    role=\"ctb\"),\nperson(\"David\",\"Simons\",         role=\"ctb\"),\nperson(\"Elliott\",\"Sales de Andrade\", role=\"ctb\"),\nperson(\"Cole\",\"Miller\",          role=\"ctb\"),\nperson(\"Jens Peder\",\"Meldgaard\", role=\"ctb\"),\nperson(\"Vaclav\",\"Tlapak\",        role=\"ctb\"),\nperson(\"Kevin\",\"Ushey\",          role=\"ctb\"),\nperson(\"Dirk\",\"Eddelbuettel\",    role=\"ctb\"),\nperson(\"Tony\",\"Fischetti\",       role=\"ctb\"),\nperson(\"Ofek\",\"Shilon\",          role=\"ctb\"),\nperson(\"Vadim\",\"Khotilovich\",    role=\"ctb\"),\nperson(\"Hadley\",\"Wickham\",       role=\"ctb\"),\nperson(\"Bennet\",\"Becker\",        role=\"ctb\"),\nperson(\"Kyle\",\"Haynes\",          role=\"ctb\"),\nperson(\"Boniface Christian\",\"Kamgang\", role=\"ctb\"),\nperson(\"Olivier\",\"Delmarcell\",   role=\"ctb\"),\nperson(\"Josh\",\"O'Brien\",         role=\"ctb\"),\nperson(\"Dereck\",\"Mezquita\",      role=\"ctb\", comment = c(ORCID=\"0000-0002-9307-6762\")),\nperson(\"Michael\",\"Czekanski\",    role=\"ctb\"),\nperson(\"Dmitry\", \"Shemetov\",     role=\"ctb\"),\nperson(\"Nitish\", \"Jha\",          role=\"ctb\"),\nperson(\"Joshua\", \"Wu\",           role=\"ctb\"),\nperson(\"Iago\", \"Giné-Vázquez\",   role=\"ctb\"),\nperson(\"Anirban\", \"Chetia\",      role=\"ctb\"),\nperson(\"Doris\", \"Amoakohene\",    role=\"ctb\"),\nperson(\"Angel\", \"Feliz\",         role=\"ctb\"),\nperson(\"Michael\",\"Young\",        role=\"ctb\"),\nperson(\"Mark\", \"Seeto\",          role=\"ctb\"),\nperson(\"Philippe\", \"Grosjean\",   role=\"ctb\"),\nperson(\"Vincent\", \"Runge\",       role=\"ctb\"),\nperson(\"Christian\", \"Wia\",       role=\"ctb\"),\nperson(\"Elise\", \"Maigné\",        role=\"ctb\"),\nperson(\"Vincent\", \"Rocher\",      role=\"ctb\"),\nperson(\"Vijay\", \"Lulla\",         role=\"ctb\"),\nperson(\"Aljaž\", \"Sluga\",         role=\"ctb\"),\nperson(\"Bill\", \"Evans\",          role=\"ctb\"),\nperson(\"Reino\", \"Bruner\",        role=\"ctb\"),\nperson(given=\"@badasahog\",       role=\"ctb\", comment=\"GitHub user\"),\nperson(\"Vinit\", \"Thakur\",        role=\"ctb\"),\nperson(\"Mukul\", \"Kumar\",         role=\"ctb\"),\nperson(\"Ildikó\", \"Czeller\",      role=\"ctb\"),\nperson(\"Manmita\", \"Das\",         role=\"ctb\"),\nperson(\"Tarun\", \"Thammisetty\",   role=\"ctb\")\n)",
  "Repository": "https://rorylawless.r-universe.dev",
  "Date/Publication": "2026-06-09 23:10:38 UTC",
  "RemoteUrl": "https://github.com/rdatatable/data.table",
  "RemoteRef": "HEAD",
  "RemoteSha": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-06-10 02:51:58 UTC",
    "User": "root"
  },
  "Author": "Tyson Barrett [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-2137-1391>),\nMatt Dowle [aut],\nArun Srinivasan [aut],\nJan Gorecki [aut],\nMichael Chirico [aut] (ORCID: <https://orcid.org/0000-0003-0787-087X>),\nToby Hocking [aut] (ORCID: <https://orcid.org/0000-0002-3146-0865>),\nBenjamin Schwendinger [aut] (ORCID:\n<https://orcid.org/0000-0003-3315-8114>),\nIvan Krylov [aut] (ORCID: <https://orcid.org/0000-0002-0172-3812>),\nPasha Stetsenko [ctb],\nTom Short [ctb],\nSteve Lianoglou [ctb],\nEduard Antonyan [ctb],\nMarkus Bonsch [ctb],\nHugh Parsonage [ctb],\nScott Ritchie [ctb],\nKun Ren [ctb],\nXianying Tan [ctb],\nRick Saporta [ctb],\nOtto Seiskari [ctb],\nXianghui Dong [ctb],\nMichel Lang [ctb],\nWatal Iwasaki [ctb],\nSeth Wenchel [ctb],\nKarl Broman [ctb],\nTobias Schmidt [ctb],\nDavid Arenburg [ctb],\nEthan Smith [ctb],\nFrancois Cocquemas [ctb],\nMatthieu Gomez [ctb],\nPhilippe Chataignon [ctb],\nNello Blaser [ctb],\nDmitry Selivanov [ctb],\nAndrey Riabushenko [ctb],\nCheng Lee [ctb],\nDeclan Groves [ctb],\nDaniel Possenriede [ctb],\nFelipe Parages [ctb],\nDenes Toth [ctb],\nMus Yaramaz-David [ctb],\nAyappan Perumal [ctb],\nJames Sams [ctb],\nMartin Morgan [ctb],\nMichael Quinn [ctb],\n@javrucebo [ctb] (GitHub user),\nMarc Halperin [ctb],\nRoy Storey [ctb],\nManish Saraswat [ctb],\nMorgan Jacob [ctb],\nMichael Schubmehl [ctb],\nDavis Vaughan [ctb],\nLeonardo Silvestri [ctb],\nJim Hester [ctb],\nAnthony Damico [ctb],\nSebastian Freundt [ctb],\nDavid Simons [ctb],\nElliott Sales de Andrade [ctb],\nCole Miller [ctb],\nJens Peder Meldgaard [ctb],\nVaclav Tlapak [ctb],\nKevin Ushey [ctb],\nDirk Eddelbuettel [ctb],\nTony Fischetti [ctb],\nOfek Shilon [ctb],\nVadim Khotilovich [ctb],\nHadley Wickham [ctb],\nBennet Becker [ctb],\nKyle Haynes [ctb],\nBoniface Christian Kamgang [ctb],\nOlivier Delmarcell [ctb],\nJosh O'Brien [ctb],\nDereck Mezquita [ctb] (ORCID: <https://orcid.org/0000-0002-9307-6762>),\nMichael Czekanski [ctb],\nDmitry Shemetov [ctb],\nNitish Jha [ctb],\nJoshua Wu [ctb],\nIago Giné-Vázquez [ctb],\nAnirban Chetia [ctb],\nDoris Amoakohene [ctb],\nAngel Feliz [ctb],\nMichael Young [ctb],\nMark Seeto [ctb],\nPhilippe Grosjean [ctb],\nVincent Runge [ctb],\nChristian Wia [ctb],\nElise Maigné [ctb],\nVincent Rocher [ctb],\nVijay Lulla [ctb],\nAljaž Sluga [ctb],\nBill Evans [ctb],\nReino Bruner [ctb],\n@badasahog [ctb] (GitHub user),\nVinit Thakur [ctb],\nMukul Kumar [ctb],\nIldikó Czeller [ctb],\nManmita Das [ctb],\nTarun Thammisetty [ctb]",
  "Maintainer": "Tyson Barrett <t.barrett88@gmail.com>",
  "MD5sum": "d113fbc1ab747f408bf68d560890b375",
  "_user": "rorylawless",
  "_type": "src",
  "_file": "data.table_1.18.99.tar.gz",
  "_fileid": "e21d00f4d7af68457e776ccda96be78f585293cbe73b70903ebf95f95c5a11f3",
  "_filesize": 6870813,
  "_sha256": "e21d00f4d7af68457e776ccda96be78f585293cbe73b70903ebf95f95c5a11f3",
  "_created": "2026-06-10T02:51:58.000Z",
  "_published": "2026-06-10T02:59:01.749Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 80471822565,
      "time": 190,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7525437074"
    },
    {
      "job": 80471822506,
      "time": 189,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7525436534"
    },
    {
      "job": 80471822562,
      "time": 191,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525437289"
    },
    {
      "job": 80471822571,
      "time": 242,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525445620"
    },
    {
      "job": 80471822540,
      "time": 147,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "7525434745"
    },
    {
      "job": 80471822522,
      "time": 314,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "7525463194"
    },
    {
      "job": 80471822517,
      "time": 223,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525447662"
    },
    {
      "job": 80471822505,
      "time": 326,
      "config": "macos-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525465219"
    },
    {
      "job": 80471436374,
      "time": 225,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525401026"
    },
    {
      "job": 80471822477,
      "time": 106,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525421686"
    },
    {
      "job": 80471822503,
      "time": 227,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7525442996"
    },
    {
      "job": 80471822497,
      "time": 239,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "NOTE",
      "artifact": "7525445545"
    },
    {
      "job": 80471822498,
      "time": 216,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7525441042"
    }
  ],
  "_buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/rdatatable/data.table",
  "_commit": {
    "id": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
    "author": "Dereck Mezquita <44912288+dereckmezquita@users.noreply.github.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Fix name spellings and add ORCID. (#7787)",
    "time": 1781046638
  },
  "_maintainer": {
    "name": "Tyson Barrett",
    "email": "t.barrett88@gmail.com",
    "login": "tysonstanley",
    "linkedin": "in/tyson-s-barrett-phd",
    "description": "Researcher at Highmark Health | Applied Statistician and Data Scientist | #rstats #rdatatable",
    "uuid": 12206113,
    "orcid": "0000-0002-2137-1391"
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "bit64",
      "version": ">= 4.0.0",
      "role": "Suggests"
    },
    {
      "package": "R.utils",
      "role": "Suggests"
    },
    {
      "package": "xts",
      "role": "Suggests"
    },
    {
      "package": "zoo",
      "version": ">= 1.8-1",
      "role": "Suggests"
    },
    {
      "package": "yaml",
      "role": "Suggests"
    },
    {
      "package": "litedown",
      "role": "Suggests"
    },
    {
      "package": "codetools",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Enhances"
    },
    {
      "package": "xfun",
      "role": "Enhances"
    }
  ],
  "_owner": "rdatatable",
  "_selfowned": false,
  "_usedby": 5158,
  "_updates": [
    {
      "week": "2025-24",
      "n": 7
    },
    {
      "week": "2025-25",
      "n": 7
    },
    {
      "week": "2025-26",
      "n": 23
    },
    {
      "week": "2025-27",
      "n": 27
    },
    {
      "week": "2025-28",
      "n": 16
    },
    {
      "week": "2025-29",
      "n": 19
    },
    {
      "week": "2025-30",
      "n": 20
    },
    {
      "week": "2025-31",
      "n": 8
    },
    {
      "week": "2025-32",
      "n": 7
    },
    {
      "week": "2025-33",
      "n": 3
    },
    {
      "week": "2025-34",
      "n": 1
    },
    {
      "week": "2025-35",
      "n": 10
    },
    {
      "week": "2025-36",
      "n": 8
    },
    {
      "week": "2025-37",
      "n": 16
    },
    {
      "week": "2025-38",
      "n": 5
    },
    {
      "week": "2025-39",
      "n": 13
    },
    {
      "week": "2025-40",
      "n": 4
    },
    {
      "week": "2025-41",
      "n": 1
    },
    {
      "week": "2025-42",
      "n": 5
    },
    {
      "week": "2025-43",
      "n": 9
    },
    {
      "week": "2025-44",
      "n": 4
    },
    {
      "week": "2025-45",
      "n": 8
    },
    {
      "week": "2025-46",
      "n": 2
    },
    {
      "week": "2025-47",
      "n": 3
    },
    {
      "week": "2025-48",
      "n": 2
    },
    {
      "week": "2025-49",
      "n": 6
    },
    {
      "week": "2025-50",
      "n": 9
    },
    {
      "week": "2025-51",
      "n": 14
    },
    {
      "week": "2025-52",
      "n": 30
    },
    {
      "week": "2026-01",
      "n": 13
    },
    {
      "week": "2026-02",
      "n": 17
    },
    {
      "week": "2026-03",
      "n": 7
    },
    {
      "week": "2026-04",
      "n": 13
    },
    {
      "week": "2026-05",
      "n": 7
    },
    {
      "week": "2026-08",
      "n": 1
    },
    {
      "week": "2026-10",
      "n": 5
    },
    {
      "week": "2026-11",
      "n": 6
    },
    {
      "week": "2026-13",
      "n": 2
    },
    {
      "week": "2026-14",
      "n": 3
    },
    {
      "week": "2026-15",
      "n": 4
    },
    {
      "week": "2026-16",
      "n": 1
    },
    {
      "week": "2026-17",
      "n": 1
    },
    {
      "week": "2026-18",
      "n": 5
    },
    {
      "week": "2026-19",
      "n": 7
    },
    {
      "week": "2026-21",
      "n": 3
    },
    {
      "week": "2026-22",
      "n": 8
    },
    {
      "week": "2026-23",
      "n": 5
    },
    {
      "week": "2026-24",
      "n": 3
    }
  ],
  "_tags": [
    {
      "name": "1.17.6",
      "date": "2025-06-17"
    },
    {
      "name": "1.17.8",
      "date": "2025-07-11"
    },
    {
      "name": "1.18.0",
      "date": "2025-12-24"
    },
    {
      "name": "1.18.2.1",
      "date": "2026-01-27"
    },
    {
      "name": "1.18.4",
      "date": "2026-05-06"
    }
  ],
  "_stars": 3894,
  "_contributors": [
    {
      "user": "mattdowle",
      "count": 2416,
      "uuid": 2779998
    },
    {
      "user": "arunsrinivasan",
      "count": 1124,
      "uuid": 3102045
    },
    {
      "user": "michaelchirico",
      "count": 837,
      "uuid": 7606389
    },
    {
      "user": "jangorecki",
      "count": 483,
      "uuid": 3627377
    },
    {
      "user": "ben-schwen",
      "count": 161,
      "uuid": 52290390
    },
    {
      "user": "aitap",
      "count": 113,
      "uuid": 692445
    },
    {
      "user": "tdhock",
      "count": 102,
      "uuid": 932850
    },
    {
      "user": "st-pasha",
      "count": 76,
      "uuid": 4231472
    },
    {
      "user": "badasahog",
      "count": 67,
      "uuid": 52379863
    },
    {
      "user": "anirban166",
      "count": 61,
      "uuid": 30123691
    },
    {
      "user": "tshort",
      "count": 38,
      "uuid": 636420
    },
    {
      "user": "lianos",
      "count": 37,
      "uuid": 25496
    },
    {
      "user": "eantonya",
      "count": 33,
      "uuid": 691190
    },
    {
      "user": "nj221102",
      "count": 32,
      "uuid": 151559388
    },
    {
      "user": "shrektan",
      "count": 32,
      "uuid": 8368933
    },
    {
      "user": "joshhwuu",
      "count": 32,
      "uuid": 124658199
    },
    {
      "user": "venom1204",
      "count": 31,
      "uuid": 178005977
    },
    {
      "user": "hughparsonage",
      "count": 21,
      "uuid": 8111628
    },
    {
      "user": "mukulyadav2004",
      "count": 17,
      "uuid": 145585624
    },
    {
      "user": "colemiller1",
      "count": 13,
      "uuid": 57992489
    },
    {
      "user": "markusbonsch",
      "count": 13,
      "uuid": 25821520
    },
    {
      "user": "sritchie73",
      "count": 13,
      "uuid": 1674387
    },
    {
      "user": "tysonstanley",
      "count": 13,
      "uuid": 12206113
    },
    {
      "user": "tlapak",
      "count": 10,
      "uuid": 55213630
    },
    {
      "user": "kbodwin",
      "count": 9,
      "uuid": 22135489
    },
    {
      "user": "rffontenelle",
      "count": 8,
      "uuid": 1571783
    },
    {
      "user": "oseiskar",
      "count": 7,
      "uuid": 1812432
    },
    {
      "user": "philippechataignon",
      "count": 7,
      "uuid": 1644875
    },
    {
      "user": "rsaporta",
      "count": 7,
      "uuid": 1760870
    },
    {
      "user": "rikivillalba",
      "count": 7,
      "uuid": 32423469
    },
    {
      "user": "kylehaynes",
      "count": 6,
      "uuid": 5267027
    },
    {
      "user": "dracodoc",
      "count": 6,
      "uuid": 1730496
    },
    {
      "user": "hadley",
      "count": 6,
      "uuid": 4196
    },
    {
      "user": "christianwia",
      "count": 6,
      "uuid": 23187442
    },
    {
      "user": "manmita",
      "count": 5,
      "uuid": 34617961
    },
    {
      "user": "mllg",
      "count": 5,
      "uuid": 1260920
    },
    {
      "user": "2005m",
      "count": 5,
      "uuid": 25661020
    },
    {
      "user": "mmaechler",
      "count": 5,
      "uuid": 995722
    },
    {
      "user": "ofekshilon",
      "count": 4,
      "uuid": 73080
    },
    {
      "user": "royalts",
      "count": 4,
      "uuid": 702580
    },
    {
      "user": "mcol",
      "count": 4,
      "uuid": 6078177
    },
    {
      "user": "mnazarov",
      "count": 3,
      "uuid": 2838666
    },
    {
      "user": "iagogv3",
      "count": 3,
      "uuid": 40892925
    },
    {
      "user": "davidarenburg",
      "count": 3,
      "uuid": 7597389
    },
    {
      "user": "heavywatal",
      "count": 3,
      "uuid": 1431267
    },
    {
      "user": "renkun-ken",
      "count": 3,
      "uuid": 4662568
    },
    {
      "user": "kevinushey",
      "count": 3,
      "uuid": 1976582
    },
    {
      "user": "jimhester",
      "count": 3,
      "uuid": 205275
    },
    {
      "user": "jenspederm",
      "count": 3,
      "uuid": 37183160
    },
    {
      "user": "ajdamico",
      "count": 3,
      "uuid": 216807
    },
    {
      "user": "eddelbuettel",
      "count": 3,
      "uuid": 673121
    },
    {
      "user": "restonslacker",
      "count": 2,
      "uuid": 5813515
    },
    {
      "user": "tonyfischetti",
      "count": 2,
      "uuid": 1426723
    },
    {
      "user": "khotilov",
      "count": 2,
      "uuid": 1613551
    },
    {
      "user": "vlulla",
      "count": 2,
      "uuid": 1458383
    },
    {
      "user": "d-sci",
      "count": 2,
      "uuid": 6467018
    },
    {
      "user": "jmrung",
      "count": 2,
      "uuid": 32681488
    },
    {
      "user": "r2evans",
      "count": 2,
      "uuid": 5815808
    },
    {
      "user": "sluga",
      "count": 2,
      "uuid": 20184267
    },
    {
      "user": "dereckmezquita",
      "count": 2,
      "uuid": 44912288
    },
    {
      "user": "m-muecke",
      "count": 2,
      "uuid": 26463953
    },
    {
      "user": "markseeto",
      "count": 2,
      "uuid": 39866968
    },
    {
      "user": "qulogic",
      "count": 2,
      "uuid": 302469
    },
    {
      "user": "dvg-p4",
      "count": 2,
      "uuid": 106110177
    },
    {
      "user": "angelfelizr",
      "count": 2,
      "uuid": 84166329
    },
    {
      "user": "fparages",
      "count": 2,
      "uuid": 35351826
    },
    {
      "user": "fkohrt",
      "count": 2,
      "uuid": 12914806
    },
    {
      "user": "jdblischak",
      "count": 2,
      "uuid": 1608317
    },
    {
      "user": "joshobrien",
      "count": 2,
      "uuid": 3478309
    },
    {
      "user": "kbroman",
      "count": 2,
      "uuid": 53972
    },
    {
      "user": "mahjabinoyshi",
      "count": 2,
      "uuid": 197597579
    },
    {
      "user": "mschubmehl",
      "count": 2,
      "uuid": 6615855
    },
    {
      "user": "phgrosjean",
      "count": 2,
      "uuid": 3286897
    },
    {
      "user": "proffancypants",
      "count": 2,
      "uuid": 7212413
    },
    {
      "user": "sbensoussan",
      "count": 1,
      "uuid": 3643837
    },
    {
      "user": "sebkrantz",
      "count": 1,
      "uuid": 48053842
    },
    {
      "user": "hroptatyr",
      "count": 1,
      "uuid": 243996
    },
    {
      "user": "sashahafner",
      "count": 1,
      "uuid": 35272876
    },
    {
      "user": "russhyde",
      "count": 1,
      "uuid": 7734886
    },
    {
      "user": "kiwiroy",
      "count": 1,
      "uuid": 313562
    },
    {
      "user": "romunov",
      "count": 1,
      "uuid": 544571
    },
    {
      "user": "ironholds",
      "count": 1,
      "uuid": 2487262
    },
    {
      "user": "crerecombinase",
      "count": 1,
      "uuid": 3493159
    },
    {
      "user": "nanxstats",
      "count": 1,
      "uuid": 199363
    },
    {
      "user": "m-yd",
      "count": 1,
      "uuid": 27281127
    },
    {
      "user": "michaelquinn32",
      "count": 1,
      "uuid": 3473921
    },
    {
      "user": "mczek",
      "count": 1,
      "uuid": 38838492
    },
    {
      "user": "mfansler",
      "count": 1,
      "uuid": 1182216
    },
    {
      "user": "matthieugomez",
      "count": 1,
      "uuid": 6223837
    },
    {
      "user": "mtmorgan",
      "count": 1,
      "uuid": 118552
    },
    {
      "user": "marcusklik",
      "count": 1,
      "uuid": 24658401
    },
    {
      "user": "markderry",
      "count": 1,
      "uuid": 3118171
    },
    {
      "user": "mlopez-ibanez",
      "count": 1,
      "uuid": 2620021
    },
    {
      "user": "wligtenberg",
      "count": 1,
      "uuid": 1241175
    },
    {
      "user": "rtobar",
      "count": 1,
      "uuid": 620848
    },
    {
      "user": "psychometrician",
      "count": 1,
      "uuid": 3190035
    },
    {
      "user": "omartech312",
      "count": 1,
      "uuid": 102494287
    },
    {
      "user": "odelmarcelle",
      "count": 1,
      "uuid": 66041410
    },
    {
      "user": "myoung3",
      "count": 1,
      "uuid": 2517171
    }
  ],
  "_userbio": {
    "uuid": 24260923,
    "type": "user",
    "name": "Rory Lawless"
  },
  "_downloads": {
    "count": 928371,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/data.table"
  },
  "_devurl": "https://github.com/rdatatable/data.table",
  "_searchresults": 298496,
  "_topics": [
    "zlib",
    "openmp"
  ],
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/data.table.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/rdatatable/data.table",
  "_realowner": "rdatatable",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0",
      "date": "2006-04-14"
    },
    {
      "version": "1.1",
      "date": "2008-08-27"
    },
    {
      "version": "1.2",
      "date": "2008-09-01"
    },
    {
      "version": "1.4.1",
      "date": "2010-05-03"
    },
    {
      "version": "1.5",
      "date": "2010-09-14"
    },
    {
      "version": "1.5.1",
      "date": "2011-01-08"
    },
    {
      "version": "1.5.2",
      "date": "2011-01-21"
    },
    {
      "version": "1.5.3",
      "date": "2011-02-11"
    },
    {
      "version": "1.6",
      "date": "2011-04-24"
    },
    {
      "version": "1.6.1",
      "date": "2011-06-29"
    },
    {
      "version": "1.6.2",
      "date": "2011-07-02"
    },
    {
      "version": "1.6.3",
      "date": "2011-08-04"
    },
    {
      "version": "1.6.4",
      "date": "2011-08-10"
    },
    {
      "version": "1.6.5",
      "date": "2011-08-25"
    },
    {
      "version": "1.6.6",
      "date": "2011-08-25"
    },
    {
      "version": "1.7.1",
      "date": "2011-10-22"
    },
    {
      "version": "1.7.2",
      "date": "2011-11-07"
    },
    {
      "version": "1.7.3",
      "date": "2011-11-25"
    },
    {
      "version": "1.7.4",
      "date": "2011-11-29"
    },
    {
      "version": "1.7.5",
      "date": "2011-12-04"
    },
    {
      "version": "1.7.6",
      "date": "2011-12-13"
    },
    {
      "version": "1.7.7",
      "date": "2011-12-15"
    },
    {
      "version": "1.7.8",
      "date": "2012-01-25"
    },
    {
      "version": "1.7.9",
      "date": "2012-01-31"
    },
    {
      "version": "1.7.10",
      "date": "2012-02-07"
    },
    {
      "version": "1.8.0",
      "date": "2012-07-16"
    },
    {
      "version": "1.8.2",
      "date": "2012-07-17"
    },
    {
      "version": "1.8.4",
      "date": "2012-11-09"
    },
    {
      "version": "1.8.6",
      "date": "2012-11-13"
    },
    {
      "version": "1.8.8",
      "date": "2013-03-06"
    },
    {
      "version": "1.8.10",
      "date": "2013-09-03"
    },
    {
      "version": "1.9.2",
      "date": "2014-02-27"
    },
    {
      "version": "1.9.4",
      "date": "2014-10-02"
    },
    {
      "version": "1.9.6",
      "date": "2015-09-19"
    },
    {
      "version": "1.9.8",
      "date": "2016-11-25"
    },
    {
      "version": "1.10.0",
      "date": "2016-12-03"
    },
    {
      "version": "1.10.2",
      "date": "2017-01-31"
    },
    {
      "version": "1.10.4",
      "date": "2017-02-01"
    },
    {
      "version": "1.10.4-1",
      "date": "2017-10-09"
    },
    {
      "version": "1.10.4-2",
      "date": "2017-10-12"
    },
    {
      "version": "1.10.4-3",
      "date": "2017-10-27"
    },
    {
      "version": "1.11.0",
      "date": "2018-05-01"
    },
    {
      "version": "1.11.2",
      "date": "2018-05-08"
    },
    {
      "version": "1.11.4",
      "date": "2018-05-27"
    },
    {
      "version": "1.11.6",
      "date": "2018-09-19"
    },
    {
      "version": "1.11.8",
      "date": "2018-09-30"
    },
    {
      "version": "1.12.0",
      "date": "2019-01-13"
    },
    {
      "version": "1.12.2",
      "date": "2019-04-07"
    },
    {
      "version": "1.12.4",
      "date": "2019-10-03"
    },
    {
      "version": "1.12.6",
      "date": "2019-10-18"
    },
    {
      "version": "1.12.8",
      "date": "2019-12-09"
    },
    {
      "version": "1.13.0",
      "date": "2020-07-24"
    },
    {
      "version": "1.13.2",
      "date": "2020-10-19"
    },
    {
      "version": "1.13.4",
      "date": "2020-12-08"
    },
    {
      "version": "1.13.6",
      "date": "2020-12-30"
    },
    {
      "version": "1.14.0",
      "date": "2021-02-21"
    },
    {
      "version": "1.14.2",
      "date": "2021-09-27"
    },
    {
      "version": "1.14.4",
      "date": "2022-10-17"
    },
    {
      "version": "1.14.6",
      "date": "2022-11-16"
    },
    {
      "version": "1.14.8",
      "date": "2023-02-17"
    },
    {
      "version": "1.14.10",
      "date": "2023-12-08"
    },
    {
      "version": "1.15.0",
      "date": "2024-01-30"
    },
    {
      "version": "1.15.2",
      "date": "2024-02-29"
    },
    {
      "version": "1.15.4",
      "date": "2024-03-31"
    },
    {
      "version": "1.16.0",
      "date": "2024-08-27"
    },
    {
      "version": "1.16.2",
      "date": "2024-10-10"
    },
    {
      "version": "1.16.4",
      "date": "2024-12-06"
    },
    {
      "version": "1.17.0",
      "date": "2025-02-22"
    },
    {
      "version": "1.17.2",
      "date": "2025-05-12"
    },
    {
      "version": "1.17.4",
      "date": "2025-05-27"
    },
    {
      "version": "1.17.6",
      "date": "2025-06-17"
    },
    {
      "version": "1.17.8",
      "date": "2025-07-10"
    },
    {
      "version": "1.18.0",
      "date": "2025-12-24"
    },
    {
      "version": "1.18.2.1",
      "date": "2026-01-27"
    },
    {
      "version": "1.18.4",
      "date": "2026-05-06"
    }
  ],
  "_exports": [
    ":=",
    ".BY",
    ".EACHI",
    ".GRP",
    ".I",
    ".Last.updated",
    ".N",
    ".NGRP",
    ".SD",
    ".selfref.ok",
    "%between%",
    "%chin%",
    "%flike%",
    "%ilike%",
    "%inrange%",
    "%like%",
    "%notin%",
    "%plike%",
    "address",
    "alloc.col",
    "as.data.table",
    "as.IDate",
    "as.ITime",
    "as.xts.data.table",
    "between",
    "binary_reopener",
    "cbindlist",
    "chgroup",
    "chmatch",
    "chorder",
    "CJ",
    "copy",
    "cube",
    "data.table",
    "dcast",
    "dcast.data.table",
    "fcase",
    "fcoalesce",
    "fctr",
    "fdroplevels",
    "fifelse",
    "fintersect",
    "first",
    "format_col",
    "format_list_item",
    "foverlaps",
    "frank",
    "frankv",
    "fread",
    "frev",
    "frolladapt",
    "frollapply",
    "frollmax",
    "frollmean",
    "frollmedian",
    "frollmin",
    "frollprod",
    "frollsd",
    "frollsum",
    "frollvar",
    "fsetdiff",
    "fsetequal",
    "fsort",
    "funion",
    "fwrite",
    "getDTthreads",
    "getNumericRounding",
    "groupingsets",
    "haskey",
    "hour",
    "IDateTime",
    "indices",
    "inrange",
    "is.data.table",
    "isoweek",
    "isoyear",
    "key",
    "last",
    "let",
    "like",
    "mday",
    "measure",
    "measurev",
    "melt",
    "melt.data.table",
    "merge.data.table",
    "mergelist",
    "minute",
    "month",
    "nafill",
    "patterns",
    "quarter",
    "rbindlist",
    "rleid",
    "rleidv",
    "rollup",
    "rowid",
    "rowidv",
    "rowwiseDT",
    "second",
    "set",
    "setalloccol",
    "setallocrow",
    "setattr",
    "setcbindlist",
    "setcolorder",
    "setDF",
    "setdroplevels",
    "setDT",
    "setDTthreads",
    "setindex",
    "setindexv",
    "setkey",
    "setkeyv",
    "setmergelist",
    "setnafill",
    "setnames",
    "setNumericRounding",
    "setorder",
    "setorderv",
    "shift",
    "shouldPrint",
    "SJ",
    "substitute2",
    "tables",
    "test.data.table",
    "timetaken",
    "transpose",
    "truelength",
    "tstrsplit",
    "uniqueN",
    "update_dev_pkg",
    "wday",
    "week",
    "yday",
    "year",
    "yearmon",
    "yearqtr"
  ],
  "_help": [
    {
      "page": "data.table",
      "title": "Enhanced data.frame",
      "topics": [
        "data.table-package",
        ".",
        ".(",
        ".()",
        "..",
        "data.table",
        "is.na.data.table",
        "Ops.data.table",
        "[.data.table"
      ]
    },
    {
      "page": "assign",
      "title": "Assignment by reference",
      "topics": [
        ":=",
        "let",
        "set"
      ]
    },
    {
      "page": "last.updated",
      "title": "Number of rows affected by last update",
      "topics": [
        ".Last.updated",
        "Last.updated"
      ]
    },
    {
      "page": "selfref.ok",
      "title": "Tests self reference of a data.table",
      "topics": [
        ".selfref.ok"
      ]
    },
    {
      "page": "address",
      "title": "Address in RAM of a variable",
      "topics": [
        "address"
      ]
    },
    {
      "page": "all.equal.data.table",
      "title": "Equality Test Between Two Data Tables",
      "topics": [
        "all.equal",
        "all.equal.data.table"
      ]
    },
    {
      "page": "as.data.table",
      "title": "Coerce to data.table",
      "topics": [
        "as.data.table",
        "as.data.table.array",
        "as.data.table.character",
        "as.data.table.data.frame",
        "as.data.table.data.table",
        "as.data.table.Date",
        "as.data.table.factor",
        "as.data.table.integer",
        "as.data.table.list",
        "as.data.table.logical",
        "as.data.table.matrix",
        "as.data.table.numeric",
        "as.data.table.ordered",
        "is.data.table"
      ]
    },
    {
      "page": "as.data.table.xts",
      "title": "Efficient xts to as.data.table conversion",
      "topics": [
        "as.data.table.xts"
      ]
    },
    {
      "page": "as.matrix",
      "title": "Convert a data.table to a matrix",
      "topics": [
        "as.matrix",
        "as.matrix.data.table"
      ]
    },
    {
      "page": "as.xts.data.table",
      "title": "Efficient data.table to xts conversion",
      "topics": [
        "as.xts.data.table"
      ]
    },
    {
      "page": "between",
      "title": "Convenience functions for range subsets",
      "topics": [
        "%between%",
        "%inrange%",
        "between",
        "inrange"
      ]
    },
    {
      "page": "binary_reopener",
      "title": "Create a function to open connections in binary mode",
      "topics": [
        "binary_reopener",
        "binary_reopener.bzfile",
        "binary_reopener.default",
        "binary_reopener.file",
        "binary_reopener.gzfile",
        "binary_reopener.pipe",
        "binary_reopener.unz",
        "binary_reopener.url"
      ]
    },
    {
      "page": "cbindlist",
      "title": "Column bind multiple data.tables",
      "topics": [
        "cbind",
        "cbind.data.table",
        "cbindlist",
        "setcbindlist"
      ]
    },
    {
      "page": "cdt",
      "title": "data.table exported C routines",
      "topics": [
        "cdatatable"
      ]
    },
    {
      "page": "chmatch",
      "title": "Faster match of character vectors",
      "topics": [
        "%chin%",
        "chgroup",
        "chmatch",
        "chorder"
      ]
    },
    {
      "page": "copy",
      "title": "Copy an entire object",
      "topics": [
        "copy"
      ]
    },
    {
      "page": "data.table-class",
      "title": "S4 Definition for data.table",
      "topics": [
        "class:data.table",
        "data.table-class"
      ]
    },
    {
      "page": "data.table-condition-classes",
      "title": "Condition Handling with Classed Conditions",
      "topics": [
        "data.table-condition-classes"
      ]
    },
    {
      "page": "data.table-options",
      "title": "Global Options for the data.table Package",
      "topics": [
        "data.table-options",
        "data.table.options",
        "datatable-options",
        "datatable.options"
      ]
    },
    {
      "page": "datatable-optimize",
      "title": "Optimisations in data.table",
      "topics": [
        "auto-index",
        "auto-indexing",
        "autoindex",
        "autoindexing",
        "data.table-optimize",
        "data.table.optimize",
        "datatable-optimize",
        "datatable.optimize",
        "GForce",
        "gforce",
        "rounding"
      ]
    },
    {
      "page": "dcast.data.table",
      "title": "Fast dcast for data.table",
      "topics": [
        "dcast",
        "dcast.data.table"
      ]
    },
    {
      "page": "duplicated",
      "title": "Determine Duplicate Rows",
      "topics": [
        "anyDuplicated",
        "anyDuplicated.data.table",
        "duplicated",
        "duplicated.data.table",
        "unique",
        "unique.data.table",
        "uniqueN"
      ]
    },
    {
      "page": "fcase",
      "title": "fcase",
      "topics": [
        "fcase"
      ]
    },
    {
      "page": "coalesce",
      "title": "Coalescing missing values",
      "topics": [
        "fcoalesce",
        "setcoalesce"
      ]
    },
    {
      "page": "fctr",
      "title": "Create a factor retaining original ordering",
      "topics": [
        "factor",
        "fctr"
      ]
    },
    {
      "page": "fdroplevels",
      "title": "Fast droplevels",
      "topics": [
        "droplevels",
        "droplevels.data.table",
        "fdroplevels",
        "setdroplevels"
      ]
    },
    {
      "page": "fifelse",
      "title": "Fast ifelse",
      "topics": [
        "fifelse",
        "ifelse"
      ]
    },
    {
      "page": "foverlaps",
      "title": "Fast overlap joins",
      "topics": [
        "foverlaps"
      ]
    },
    {
      "page": "frank",
      "title": "Fast rank",
      "topics": [
        "frank",
        "frankv",
        "rank"
      ]
    },
    {
      "page": "fread",
      "title": "Fast and friendly file finagler",
      "topics": [
        "fread"
      ]
    },
    {
      "page": "frev",
      "title": "Fast reverse",
      "topics": [
        "frev",
        "rev"
      ]
    },
    {
      "page": "froll",
      "title": "Rolling functions",
      "topics": [
        "froll",
        "frollmax",
        "frollmean",
        "frollmedian",
        "frollmin",
        "frollprod",
        "frollsd",
        "frollsum",
        "frollvar",
        "moving",
        "roll",
        "rolling",
        "rollmax",
        "rollmean",
        "rollmedian",
        "rollmin",
        "rollprod",
        "rollsd",
        "rollsum",
        "rollvar",
        "running",
        "sliding"
      ]
    },
    {
      "page": "frolladapt",
      "title": "Adapt rolling window to irregularly spaced time series",
      "topics": [
        "frolladapt"
      ]
    },
    {
      "page": "frollapply",
      "title": "Rolling user-defined function",
      "topics": [
        "frollapply",
        "rollapply"
      ]
    },
    {
      "page": "fsort",
      "title": "Fast parallel sort",
      "topics": [
        "fsort"
      ]
    },
    {
      "page": "fwrite",
      "title": "Fast CSV writer",
      "topics": [
        "fwrite"
      ]
    },
    {
      "page": "groupingsets",
      "title": "Grouping Set aggregation for data tables",
      "topics": [
        "cube",
        "cube.data.table",
        "groupingsets",
        "groupingsets.data.table",
        "rollup",
        "rollup.data.table"
      ]
    },
    {
      "page": "IDateTime",
      "title": "Integer based date class",
      "topics": [
        "as.character.ITime",
        "as.Date.IDate",
        "as.IDate",
        "as.IDate.Date",
        "as.IDate.default",
        "as.ITime",
        "as.ITime.character",
        "as.ITime.default",
        "as.ITime.POSIXlt",
        "as.ITime.times",
        "as.list.IDate",
        "as.POSIXct.IDate",
        "as.POSIXct.ITime",
        "as.POSIXlt.ITime",
        "c.IDate",
        "c.ITime",
        "format.ITime",
        "hour",
        "IDate",
        "IDate-class",
        "IDateTime",
        "IDateTime.default",
        "isoweek",
        "isoyear",
        "ITime",
        "ITime-class",
        "mday",
        "mean.IDate",
        "mean.ITime",
        "minute",
        "month",
        "print.ITime",
        "quarter",
        "rep.IDate",
        "rep.ITime",
        "round.IDate",
        "round.ITime",
        "second",
        "seq.IDate",
        "seq.ITime",
        "trunc.ITime",
        "wday",
        "week",
        "yday",
        "year",
        "yearmon",
        "yearqtr"
      ]
    },
    {
      "page": "J",
      "title": "Creates a join 'data.table'",
      "topics": [
        "CJ",
        "J",
        "SJ"
      ]
    },
    {
      "page": "last",
      "title": "First/last item of an object",
      "topics": [
        "first",
        "last"
      ]
    },
    {
      "page": "like",
      "title": "Convenience function for calling grep",
      "topics": [
        "%flike%",
        "%ilike%",
        "%like%",
        "%plike%",
        "like"
      ]
    },
    {
      "page": "measure",
      "title": "Specify measure.vars via regex or separator",
      "topics": [
        "measure",
        "measurev"
      ]
    },
    {
      "page": "melt.data.table",
      "title": "Fast melt for data.table",
      "topics": [
        "melt",
        "melt.data.table"
      ]
    },
    {
      "page": "merge",
      "title": "Merge two data.tables",
      "topics": [
        "merge",
        "merge.data.table"
      ]
    },
    {
      "page": "mergelist",
      "title": "Merge multiple data.tables",
      "topics": [
        "mergelist",
        "setmergelist"
      ]
    },
    {
      "page": "na.omit.data.table",
      "title": "Remove rows with missing values on columns specified",
      "topics": [
        "na.omit",
        "na.omit.data.table"
      ]
    },
    {
      "page": "nafill",
      "title": "Fill missing values",
      "topics": [
        "fill",
        "locf",
        "na.fill",
        "nafill",
        "nocb",
        "setnafill"
      ]
    },
    {
      "page": "notin",
      "title": "Convenience operator for checking if an example is not in a set of elements",
      "topics": [
        "%notin%"
      ]
    },
    {
      "page": "patterns",
      "title": "Obtain matching indices corresponding to patterns",
      "topics": [
        "patterns"
      ]
    },
    {
      "page": "print.data.table",
      "title": "data.table Printing Options",
      "topics": [
        "format_col",
        "format_col.default",
        "format_col.expression",
        "format_col.POSIXct",
        "format_list_item",
        "format_list_item.default",
        "print.data.table"
      ]
    },
    {
      "page": "rbindlist",
      "title": "Makes one data.table from a list of many",
      "topics": [
        "rbind",
        "rbind.data.table",
        "rbindlist"
      ]
    },
    {
      "page": "rleid",
      "title": "Generate run-length type group id",
      "topics": [
        "rleid",
        "rleidv"
      ]
    },
    {
      "page": "rowid",
      "title": "Generate unique row ids within each group",
      "topics": [
        "rowid",
        "rowidv"
      ]
    },
    {
      "page": "rowwiseDT",
      "title": "Create a data.table row-wise",
      "topics": [
        "rowwiseDT"
      ]
    },
    {
      "page": "setattr",
      "title": "Set attributes of objects by reference",
      "topics": [
        "setattr",
        "setnames"
      ]
    },
    {
      "page": "setcolorder",
      "title": "Fast column reordering of a data.table by reference",
      "topics": [
        "setcolorder"
      ]
    },
    {
      "page": "setDF",
      "title": "Coerce a data.table to data.frame by reference",
      "topics": [
        "setDF"
      ]
    },
    {
      "page": "setDT",
      "title": "Coerce lists and data.frames to data.table by reference",
      "topics": [
        "setDT"
      ]
    },
    {
      "page": "openmp-utils",
      "title": "Set or get number of threads that data.table should use",
      "topics": [
        "getDTthreads",
        "openMP",
        "openmp",
        "setDTthreads"
      ]
    },
    {
      "page": "setkey",
      "title": "Create key on a data.table",
      "topics": [
        "haskey",
        "indices",
        "key",
        "setindex",
        "setindexv",
        "setkey",
        "setkeyv"
      ]
    },
    {
      "page": "setNumericRounding",
      "title": "Change or turn off numeric rounding",
      "topics": [
        "getNumericRounding",
        "setNumericRounding"
      ]
    },
    {
      "page": "setops",
      "title": "Set operations for data tables",
      "topics": [
        "except",
        "fexcept",
        "fintersect",
        "fsetdiff",
        "fsetequal",
        "funion",
        "intersect",
        "setdiff",
        "setequal",
        "setops",
        "union"
      ]
    },
    {
      "page": "setorder",
      "title": "Fast row reordering of a data.table by reference",
      "topics": [
        "fastorder",
        "forder",
        "forderv",
        "order",
        "setorder",
        "setorderv",
        "sort_by"
      ]
    },
    {
      "page": "shift",
      "title": "Fast lead/lag for vectors and lists",
      "topics": [
        "lag",
        "lead",
        "shift"
      ]
    },
    {
      "page": "shouldPrint",
      "title": "For use by packages that mimic/divert auto printing e.g. IRkernel and knitr",
      "topics": [
        "shouldPrint"
      ]
    },
    {
      "page": "special-symbols",
      "title": "Special symbols",
      "topics": [
        ".BY",
        ".EACHI",
        ".GRP",
        ".I",
        ".N",
        ".NATURAL",
        ".NGRP",
        ".SD",
        "datatable-symbols",
        "special-symbols"
      ]
    },
    {
      "page": "split",
      "title": "Split data.table into chunks in a list",
      "topics": [
        "split",
        "split.data.table"
      ]
    },
    {
      "page": "subset.data.table",
      "title": "Subsetting data.tables",
      "topics": [
        "subset",
        "subset.data.table"
      ]
    },
    {
      "page": "substitute2",
      "title": "Substitute expression",
      "topics": [
        "I",
        "substitute",
        "substitute2"
      ]
    },
    {
      "page": "tables",
      "title": "Display 'data.table' metadata",
      "topics": [
        "tables"
      ]
    },
    {
      "page": "test",
      "title": "Test assertions for equality, exceptions and console output",
      "topics": [
        "test"
      ]
    },
    {
      "page": "test.data.table",
      "title": "Runs a set of tests",
      "topics": [
        "test.data.table"
      ]
    },
    {
      "page": "timetaken",
      "title": "Pretty print of time taken",
      "topics": [
        "timetaken"
      ]
    },
    {
      "page": "transpose",
      "title": "Efficient transpose of list",
      "topics": [
        "transpose"
      ]
    },
    {
      "page": "truelength",
      "title": "Over-allocation access",
      "topics": [
        "alloc.col",
        "setalloccol",
        "setallocrow",
        "truelength"
      ]
    },
    {
      "page": "tstrsplit",
      "title": "strsplit and transpose the resulting list efficiently",
      "topics": [
        "strsplit",
        "tstrsplit"
      ]
    },
    {
      "page": "update_dev_pkg",
      "title": "Perform update of development version of a package",
      "topics": [
        "update_dev_pkg"
      ]
    }
  ],
  "_readme": "https://github.com/rdatatable/data.table/raw/HEAD/README.md",
  "_rundeps": [],
  "_sysdeps": [
    {
      "shlib": "libz",
      "package": "zlib1g",
      "headers": "zlib1g-dev",
      "source": "zlib",
      "version": "1:1.3.dfsg-3.1ubuntu2.1",
      "name": "zlib",
      "homepage": "http://zlib.net/",
      "description": "compression library - runtime"
    },
    {
      "shlib": "libgomp",
      "package": "libgomp1",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "openmp",
      "homepage": "http://gcc.gnu.org/",
      "description": "GCC OpenMP (GOMP) support library"
    }
  ],
  "_vignettes": [
    {
      "source": "datatable-benchmarking.Rmd",
      "filename": "datatable-benchmarking.html",
      "title": "Benchmarking data.table",
      "engine": "litedown::vignette",
      "headings": [
        "fread: clear caches",
        "subset: threshold for index optimization on compound queries",
        "subset: index aware benchmarking",
        "by reference operations",
        "try to benchmark atomic processes",
        "avoid class coercion",
        "avoid microbenchmark(..., times=100)",
        "multithreaded processing",
        "inside a loop prefer set instead of :=",
        "inside a loop prefer setDT instead of data.table()"
      ],
      "created": "2018-03-20 20:42:18",
      "modified": "2025-12-26 15:46:26",
      "commits": 10
    },
    {
      "source": "datatable-reshape.Rmd",
      "filename": "datatable-reshape.html",
      "title": "Efficient reshaping using data.tables",
      "engine": "litedown::vignette",
      "headings": [
        "Data",
        "Introduction",
        "1. Default functionality",
        "a) melting data.tables (wide to long)",
        "- Convert DT to long form where each dob is a separate observation.",
        "- Name the variable and value columns to child and dob respectively",
        "b) dcasting data.tables (long to wide)",
        "- How can we get back to the original data table DT from DT.m1?",
        "- Starting from DT.m1, how can we get the number of children in each family?",
        "2. Limitations in previous melt/dcast approaches",
        "Issues",
        "3. Enhanced (new) functionality",
        "a) Enhanced melt",
        "- melt multiple columns simultaneously",
        "- Using patterns()",
        "- Using measure() to specify measure.vars via separator or pattern",
        "b) Enhanced dcast",
        "- Casting multiple value.vars simultaneously",
        "",
        "Multiple functions to fun.aggregate:"
      ],
      "created": "2015-06-23 23:49:21",
      "modified": "2025-12-26 15:46:26",
      "commits": 34
    },
    {
      "source": "datatable-fread-and-fwrite.Rmd",
      "filename": "datatable-fread-and-fwrite.html",
      "title": "Fast Read and Fast Write",
      "engine": "litedown::vignette",
      "headings": [
        "1. fread()",
        "1.1 Using command line tools directly",
        "1.1.1  Reading directly from a text string",
        "1.1.2 Reading from URLs",
        "1.1.3 Automatic decompression of compressed files",
        "1.2 Automatic separator and skip detection",
        "1.3 High-Quality Automatic Column Type Detection",
        "1.4 Early Error Detection at End-of-File",
        "1.5 integer64 Support",
        "1.6 Drop or Select Columns by Name or Position",
        "1.7 Automatic Quote Escape Detection (Including No-Escape)",
        "2. fwrite()",
        "2.1 Intelligent and Minimalist Quoting (quote=\"auto\")",
        "2.2 Fine-Grained Date/Time Serialization (dateTimeAs argument)",
        "2.3 Handling of bit64::integer64",
        "2.4 Column Order and Subset Control",
        "3. A Note on Performance"
      ],
      "created": "2025-08-14 13:23:05",
      "modified": "2026-01-26 15:05:04",
      "commits": 4
    },
    {
      "source": "datatable-faq.Rmd",
      "filename": "datatable-faq.html",
      "title": "Frequently Asked Questions about data.table",
      "engine": "litedown::vignette",
      "headings": [
        "Beginner FAQs",
        "Why do DT[ , 5] and DT[2, 5] return a 1-column data.table rather than vectors like data.frame?",
        "Why does DT[,\"region\"] return a 1-column data.table rather than a vector?",
        "Why does DT[, region] return a vector for the \"region\" column?  I'd like a 1-column data.table.",
        "Why does DT[ , x, y, z] not work? I wanted the 3 columns x,y and z.",
        "I assigned a variable mycol=\"x\" but then DT[, mycol] returns an error. How do I get it to look up the column name contained in the mycol variable?",
        "What are the benefits of being able to use column names as if they are variables inside DT[...]?",
        "OK, I'm starting to see what data.table is about, but why didn't you just enhance data.frame in R? Why does it have to be a new package?",
        "Why are the defaults the way they are? Why does it work the way it does?",
        "Isn't this already done by with() and subset() in base?",
        "Why does X[Y] return all the columns from Y too? Shouldn't it return a subset of X?",
        "What is the difference between X[Y] and merge(X, Y)?",
        "Anything else about X[Y, sum(foo*bar)]?",
        "That's nice. How did you manage to change it given that users depended on the old behaviour?",
        "General Syntax",
        "How can I avoid writing a really long j expression? You've said that I should use the column names, but I've got a lot of columns.",
        "Why is the default for mult now \"all\"?",
        "I'm using c() in j and getting strange results.",
        "I have built up a complex table with many columns.  I want to use it as a template for a new table; i.e., create a new table with no rows, but with the column names and types copied from my table. Can I do that easily?",
        "Is a null data.table the same as DT[0]?",
        "Why has the DT() alias been removed?",
        "But my code uses j = DT(...) and it works. The previous FAQ says that DT() has been removed.",
        "What are the scoping rules for j expressions?",
        "Can I trace the j expression as it runs through the groups?",
        "Inside each group, why are the group variables length-1?",
        "Only the first 10 rows are printed, how do I print more?",
        "With an X[Y] join, what if X contains a column called \"Y\"?",
        "X[Z[Y]] is failing because X contains a column \"Y\". I'd like it to use the table Y in calling scope.",
        "Can you explain further why data.table is inspired by A[B] syntax in base?",
        "Can base be changed to do this then, rather than a new package?",
        "I've heard that data.table syntax is analogous to SQL.",
        "What are the smaller syntax differences between data.frame and data.table",
        "I'm using j for its side effect only, but I'm still getting data returned. How do I stop that?",
        "Why does [.data.table now have a drop argument from v1.5?",
        "Rolling joins are cool and very fast! Was that hard to program?",
        "Why does DT[i, col := value] return the whole of DT? I expected either no visible value (consistent with <-), or a message or return value containing how many rows were updated. It isn't obvious that the data has indeed been updated by reference.",
        "OK, thanks. What was so difficult about the result of DT[i, col := value] being returned invisibly?",
        "Why do I have to type DT sometimes twice after using := to print the result to console?",
        "I've noticed that base::cbind.data.frame (and base::rbind.data.frame) appear to be changed by data.table. How is this possible? Why?",
        "I've read about method dispatch (e.g. merge may or may not dispatch to merge.data.table) but how does R know how to dispatch? Are dots significant or special? How on earth does R know which function to dispatch and when?",
        "Why do T and F behave differently from TRUE and FALSE in some data.table queries?",
        "Questions relating to compute time",
        "I have 20 columns and a large number of rows. Why is an expression of one column so quick?",
        "I don't have a key on a large table, but grouping is still really quick. Why is that?",
        "Why is grouping by columns in the key faster than an ad hoc by?",
        "What are primary and secondary indexes in data.table?",
        "Error messages",
        "\"Could not find function DT\"",
        "\"unused argument(s) (MySum = sum(v))\"",
        "\"translateCharUTF8 must be called on a CHARSXP\"",
        "cbind(DT, DF) returns a strange format, e.g. Integer,5",
        "\"cannot change value of locked binding for .SD\"",
        "\"cannot change value of locked binding for .N\"",
        "Warning messages",
        "\"The following object(s) are masked from package:base: cbind, rbind\"",
        "\"Coerced numeric RHS to integer to match the column's type\"",
        "Reading data.table from RDS or RData file",
        "General questions about the package",
        "v1.3 appears to be missing from the CRAN archive?",
        "Is data.table compatible with S-plus?",
        "Is it available for Linux, Mac and Windows?",
        "I think it's great. What can I do?",
        "I think it's not great. How do I warn others about my experience?",
        "I have a question. I know the r-help posting guide tells me to contact the maintainer (not r-help), but is there a larger group of people I can ask?",
        "Where are the datatable-help archives?",
        "I'd prefer not to post on the Issues page, can I mail just one or two people privately?",
        "I have created a package that uses data.table. How do I ensure my package is data.table-aware so that inheritance from data.frame works?"
      ],
      "created": "2016-03-02 21:00:18",
      "modified": "2025-12-26 15:46:26",
      "commits": 42
    },
    {
      "source": "datatable-importing.Rmd",
      "filename": "datatable-importing.html",
      "title": "Importing data.table",
      "engine": "litedown::vignette",
      "headings": [
        "Why to import data.table",
        "Importing data.table is easy",
        "DESCRIPTION file",
        "NAMESPACE file",
        "Usage",
        "Testing",
        "Testing using testthat",
        "Dealing with \"undefined global functions or variables\"",
        "Care needed when providing and using options",
        "Troubleshooting",
        "License",
        "Optionally import data.table: Suggests",
        "data.table in Imports but nothing imported",
        "Further information on dependencies",
        "Importing data.table C routines",
        "How to convert your Depends dependency on data.table to Imports",
        "Step 0. Ensure your package is passing R CMD check initially",
        "Step 1. Update the DESCRIPTION file to put data.table in Imports, not Depends",
        "Step 2.1: Run R CMD check",
        "Step 2.2: Modify the NAMESPACE file",
        "Blanket import",
        "Step 3: Update Your R code files outside the package's R/ directory",
        "Benefits of using Imports"
      ],
      "created": "2017-11-27 22:34:25",
      "modified": "2026-05-26 07:03:02",
      "commits": 27
    },
    {
      "source": "datatable-intro.Rmd",
      "filename": "datatable-intro.html",
      "title": "Introduction to data.table",
      "engine": "litedown::vignette",
      "headings": [
        "Data analysis using data.table",
        "Data",
        "Introduction",
        "1. Basics",
        "a) What is data.table?",
        "Note that:",
        "b) General form - in what way is a data.table enhanced?",
        "The way to read it (out loud) is:",
        "c) Subset rows in i",
        "-- Get all the flights with \"JFK\" as the origin airport in the month of June.",
        "-- Get the first two rows from flights.",
        "-- Sort flights first by column origin in ascending order, and then by dest in descending order:",
        "order() is internally optimised",
        "d) Select column(s) in j",
        "-- Select arr_delay column, but return it as a vector.",
        "-- Select arr_delay column, but return as a data.table instead.",
        "Tip:",
        "-- Select both arr_delay and dep_delay columns.",
        "-- Select both arr_delay and dep_delay columns and rename them to delay_arr and delay_dep.",
        "e) Compute or do in j",
        "-- How many trips have had total delay < 0?",
        "What's happening here?",
        "f) Subset in i and do in j",
        "-- Calculate the average arrival and departure delay for all flights with \"JFK\" as the origin airport in the month of June.",
        "-- How many trips have been made in 2014 from \"JFK\" airport in the month of June?",
        "g) Handle non-existing elements in i",
        "-- What happens when querying for non-existing elements?",
        "Special symbol .N:",
        "h) Great! But how can I refer to columns by names in j (like in a data.frame)?",
        "-- Select both arr_delay and dep_delay columns the data.frame way.",
        "-- Select columns named in a variable using the .. prefix",
        "-- Select columns named in a variable using with = FALSE",
        "2. Aggregations",
        "a) Grouping using by",
        "-- How can we get the number of trips corresponding to each origin airport?",
        "-- How can we calculate the number of trips for each origin airport for carrier code \"AA\"?",
        "-- How can we get the total number of trips for each origin, dest pair for carrier code \"AA\"?",
        "-- How can we get the average arrival and departure delay for each orig,dest pair for each month for carrier code \"AA\"?",
        "b) Sorted by: keyby",
        "-- So how can we directly order by all the grouping variables?",
        "c) Chaining",
        "-- How can we order ans using the columns origin in ascending order, and dest in descending order?",
        "d) Expressions in by",
        "-- Can by accept expressions as well or does it just take columns?",
        "e) Multiple columns in j - .SD",
        "-- Do we have to compute mean() for each column individually?",
        "Special symbol .SD:",
        "-- How can we specify just the columns we would like to compute the mean() on?",
        ".SDcols",
        "f) Subset .SD for each group:",
        "-- How can we return the first two rows for each month?",
        "g) Why keep j so flexible?",
        "-- How can we concatenate columns a and b for each group in ID?",
        "-- What if we would like to have all the values of column a and b concatenated, but returned as a list column?",
        "Summary",
        "Using i:",
        "Using j:",
        "Using by:",
        "And remember the tip:"
      ],
      "created": "2016-03-06 21:25:03",
      "modified": "2026-06-08 11:46:27",
      "commits": 36
    },
    {
      "source": "datatable-joins.Rmd",
      "filename": "datatable-joins.html",
      "title": "Joins in data.table",
      "engine": "litedown::vignette",
      "headings": [
        "1. Defining example data",
        "2. data.table joining syntax",
        "3. Equi joins",
        "3.1. Right join",
        "3.1.1. Joining by a list argument",
        "3.1.2. Alternatives to define the on argument",
        "3.1.3. Operations after joining",
        "Managing shared column Names with the j argument",
        "Summarizing with on in data.table",
        "3.1.4. Joining based on several columns",
        "3.2. Inner join",
        "3.3. Anti-join",
        "3.4. Semi join",
        "3.5. Left join",
        "3.5.1. Joining after chain operations",
        "3.6. Many to many join",
        "3.6.1. Selecting one match",
        "3.6.2. Cross join",
        "3.7. Full join",
        "4. Non-equi join",
        "4.1 Output column names in non-equi joins",
        "5. Rolling join",
        "6. Taking advantage of joining speed",
        "6.1. Subsets as joins",
        "6.2. Updating by reference",
        "Reference"
      ],
      "created": "2024-10-07 20:55:34",
      "modified": "2026-01-20 22:54:47",
      "commits": 18
    },
    {
      "source": "datatable-keys-fast-subset.Rmd",
      "filename": "datatable-keys-fast-subset.html",
      "title": "Keys and fast binary search based subset",
      "engine": "litedown::vignette",
      "headings": [
        "Data",
        "Introduction",
        "1. Keys",
        "a) What is a key?",
        "Keys and their properties",
        "b) Set, get and use keys on a data.table",
        "-- How can we set the column origin as key in the data.table flights?",
        "set* and :=:",
        "-- Use the key column origin to subset all rows where the origin airport matches \"JFK\"",
        "-- How can we get the column(s) a data.table is keyed by?",
        "c) Keys and multiple columns",
        "-- How can I set keys on both origin and dest columns?",
        "-- Subset all rows using key columns where first key column origin matches \"JFK\" and second key column dest matches \"MIA\"",
        "How does the subset work here?",
        "-- Subset all rows where just the first key column origin matches \"JFK\"",
        "-- Subset all rows where just the second key column dest matches \"MIA\"",
        "What's happening here?",
        "2. Combining keys with j and by",
        "a) Select in j",
        "-- Return arr_delay column as a data.table corresponding to origin = \"LGA\" and dest = \"TPA\".",
        "b) Chaining",
        "-- On the result obtained above, use chaining to order the column in decreasing order.",
        "c) Compute or do in j",
        "-- Find the maximum arrival delay corresponding to origin = \"LGA\" and dest = \"TPA\".",
        "d) sub-assign by reference using := in j",
        "e) Aggregation using by",
        "-- Get the maximum departure delay for each month corresponding to origin = \"JFK\". Order the result by month",
        "3. Additional arguments - mult and nomatch",
        "a) The mult argument",
        "-- Subset only the first matching row from all rows where origin matches \"JFK\" and dest matches \"MIA\"",
        "-- Subset only the last matching row of all the rows where origin matches \"LGA\", \"JFK\", \"EWR\" and dest matches \"XNA\"",
        "b) The nomatch argument",
        "-- From the previous example, Subset all rows only if there's a match",
        "4. binary search vs vector scans",
        "a) Performance of binary search approach",
        "b) Why does keying a data.table result in blazing fast subsets?",
        "Vector scan approach",
        "Binary search approach",
        "Summary"
      ],
      "created": "2015-01-23 16:36:01",
      "modified": "2025-12-29 18:57:17",
      "commits": 29
    },
    {
      "source": "datatable-programming.Rmd",
      "filename": "datatable-programming.html",
      "title": "Programming on data.table",
      "engine": "litedown::vignette",
      "headings": [
        "Introduction",
        "Problem description",
        "Example",
        "Approaches to the problem",
        "Avoid lazy evaluation",
        "Use of parse / eval",
        "Computing on the language",
        "Use third party packages",
        "Programming on data.table",
        "Substituting variables and names",
        "Substitute functions",
        "Substitute variables and character values",
        "Substituting lists of arbitrary length",
        "Substitution of a complex query",
        "Common mistakes",
        "Use env argument from inside another function",
        "Retired interfaces",
        "get",
        "mget",
        "eval"
      ],
      "created": "2021-05-10 07:11:25",
      "modified": "2025-12-29 18:57:17",
      "commits": 20
    },
    {
      "source": "datatable-reference-semantics.Rmd",
      "filename": "datatable-reference-semantics.html",
      "title": "Reference semantics",
      "engine": "litedown::vignette",
      "headings": [
        "Data",
        "Introduction",
        "1. Reference semantics",
        "a) Background",
        "shallow vs deep copy",
        "",
        "b) The := operator",
        "2. Add/update/delete columns by reference",
        "a) Add columns by reference",
        "-- How can we add columns speed and total delay of each flight to flights data.table?",
        "Note that",
        "b) Update some rows of columns by reference - sub-assign by reference",
        "-- Replace those rows where hour == 24 with the value 0",
        "Exercise:",
        "c) Delete column by reference",
        "-- Remove delay column",
        "",
        "d) := along with grouping using by",
        "-- How can we add a new column which contains for each orig,dest pair the maximum speed?",
        "Note on zero-length RHS and by",
        "e) Multiple columns and :=",
        "-- How can we add two more columns computing max() of dep_delay and arr_delay for each month, using .SD?",
        "-- How can we update multiple existing columns in place using .SD?",
        "",
        "3. := and copy()",
        "a) := for its side effect",
        "b) The copy() function",
        "c) Selecting columns: $ / [[...]] vs [, col]",
        "Summary",
        "The := operator"
      ],
      "created": "2015-01-22 12:34:19",
      "modified": "2026-06-01 07:58:57",
      "commits": 34
    },
    {
      "source": "datatable-secondary-indices-and-auto-indexing.Rmd",
      "filename": "datatable-secondary-indices-and-auto-indexing.html",
      "title": "Secondary indices and auto indexing",
      "engine": "litedown::vignette",
      "headings": [
        "Data",
        "Introduction",
        "1. Secondary indices",
        "a) What are secondary indices?",
        "Keyed vs. Indexed Subsetting",
        "b) Set and get secondary indices",
        "-- How can we set the column origin as a secondary index in the data.table flights?",
        "-- How can we get all the secondary indices set so far in flights?",
        "c) Why do we need secondary indices?",
        "-- Reordering a data.table can be expensive and not always ideal",
        "setkey() requires:",
        "",
        "-- There can be only one key at the most",
        "-- Secondary indices can be reused",
        "-- The new on argument allows for cleaner syntax and automatic creation and reuse of secondary indices",
        "on argument",
        "2. Fast subsetting using on argument and secondary indices",
        "a) Fast subsets in i",
        "-- Subset all rows where the origin airport matches \"JFK\" using on",
        "-- How can I subset based on origin and dest columns?",
        "b) Select in j",
        "-- Return arr_delay column alone as a data.table corresponding to origin = \"LGA\" and dest = \"TPA\"",
        "c) Chaining",
        "-- On the result obtained above, use chaining to order the column in decreasing order.",
        "d) Compute or do in j",
        "-- Find the maximum arrival delay corresponding to origin = \"LGA\" and dest = \"TPA\".",
        "e) sub-assign by reference using := in j",
        "f) Aggregation using by",
        "-- Get the maximum departure delay for each month corresponding to origin = \"JFK\". Order the result by month",
        "g) The mult argument",
        "-- Subset only the first matching row where dest matches \"BOS\" and \"DAY\"",
        "-- Subset only the last matching row where origin matches \"LGA\", \"JFK\", \"EWR\" and dest matches \"XNA\"",
        "h) The nomatch argument",
        "-- From the previous example, subset all rows only if there's a match",
        "3. Auto indexing"
      ],
      "created": "2016-03-26 12:16:43",
      "modified": "2025-12-29 18:57:17",
      "commits": 23
    },
    {
      "source": "datatable-sd-usage.Rmd",
      "filename": "datatable-sd-usage.html",
      "title": "Using .SD for Data Analysis",
      "engine": "litedown::vignette",
      "headings": [
        "What is .SD?",
        "Loading and Previewing Lahman Data",
        ".SD on Ungrouped Data",
        "Column Subsetting: .SDcols",
        "Column Type Conversion",
        "Controlling a Model's Right-Hand Side",
        "Conditional Joins",
        "Grouped .SD operations",
        "Group Subsetting",
        "Group Optima",
        "Grouped Regression"
      ],
      "created": "2019-05-22 03:58:16",
      "modified": "2025-12-26 15:46:26",
      "commits": 23
    }
  ],
  "_score": 23.67327718460896,
  "_indexed": false,
  "_nocasepkg": "data.table",
  "_universes": [
    "rorylawless"
  ],
  "_indexurl": "https://rdatatable.r-universe.dev/data.table",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.18.99",
      "date": "2026-06-10T02:54:31.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "d73fa013945f892c32a4128250afa0790faa66ed56fe9a0a590c881df0eccf85",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.18.99",
      "date": "2026-06-10T02:54:24.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "47e98f8d5be1097c603f83f6fbbe1543dcb829d4b5a2c86ec0c00d2cc392d51b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.18.99",
      "date": "2026-06-10T02:54:32.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "d5b62e6ec1d7612c9c9c77fc3dda056e47a78cf6271a15612948ef12dbe2f1d4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.18.99",
      "date": "2026-06-10T02:55:15.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "5d8b2a1cde52d189ff7abda36588224a846e37e53ac2ec9815e2b10b0c68b5af",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.18.99",
      "date": "2026-06-10T02:54:41.000Z",
      "arch": "aarch64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "0e8ef54ea6367d761ed05214c1f8857868631ed872ed723b3cc5b69665fdbca8",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.18.99",
      "date": "2026-06-10T02:56:02.000Z",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "69a2009e10a9462c2e2a208e4d65c8baae947a95e298f88aafaacb5d8fe989f3",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.18.99",
      "date": "2026-06-10T02:55:09.000Z",
      "arch": "aarch64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "e022f2e15907e97988bd463d99593c562770fbef22475cffaac161ae1f11349b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.18.99",
      "date": "2026-06-10T02:56:05.000Z",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "f27a01a2fde6e8ca3e79269e4b97732d831751f119d4bfc90865ad686b8f6aa5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.18.99",
      "date": "2026-06-10T02:54:22.000Z",
      "arch": "emscripten",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "0119f847d604bad371f2d1761e1adf6f426a91665c0ecbe2b51ce046f5a98091",
      "status": "success",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.18.99",
      "date": "2026-06-10T02:53:44.000Z",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "3f0aa5e7ae88431db7597b69cbb602f15d678f78a63e337d43212d0350c69e43",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.18.99",
      "date": "2026-06-10T02:53:45.000Z",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "a23f108acdfbb4d85af9ea904d8ab2f94217c6064683512d39cb05332b66467d",
      "status": "success",
      "check": "NOTE",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "1.18.99",
      "date": "2026-06-10T02:53:40.000Z",
      "arch": "x86_64",
      "commit": "9fb848610d3c73125e28a9aab5304447e07ae4b3",
      "fileid": "0ebf280f7dde81ebf13c5f0e988976169fc543ca96a14cce8d8264f804f5dff9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/rorylawless/actions/runs/27249749848"
    }
  ]
}