{
  "_id": "6abe375999f7aa8c6aa53dd4",
  "Package": "NeuroDecodeR",
  "Title": "Decode Information from Neural Activity",
  "Version": "0.2.0",
  "Authors@R": "c(\nperson(\"Ethan\", \"Meyers\", email = \"ethan.meyers@gmail.com\",\nrole = c(\"aut\", \"cre\"))\n)",
  "Description": "Neural decoding is method of analyzing neural data that\nuses a pattern classifiers to predict experimental conditions\nbased on neural activity. 'NeuroDecodeR' is a system of objects\nthat makes it easy to run neural decoding analyses. For more\ninformation on neural decoding see Meyers & Kreiman (2011)\n<doi:10.7551/mitpress/8404.003.0024>.",
  "URL": "https://emeyers.github.io/NeuroDecodeR/,\nhttps://github.com/emeyers/NeuroDecodeR",
  "BugReports": "https://github.com/emeyers/NeuroDecodeR/issues",
  "License": "GPL-3",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.2.3",
  "Encoding": "UTF-8",
  "VignetteBuilder": "knitr",
  "Config/pak/sysreqs": "libicu-dev",
  "Repository": "https://emeyers.r-universe.dev",
  "Date/Publication": "2024-03-15 04:45:25 UTC",
  "RemoteUrl": "https://github.com/emeyers/neurodecoder",
  "RemoteRef": "HEAD",
  "RemoteSha": "826e2119a69d7879c3f58c75854272324dead2a7",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-01 10:30:31 UTC",
    "User": "root"
  },
  "Author": "Ethan Meyers [aut, cre]",
  "Maintainer": "Ethan Meyers <ethan.meyers@gmail.com>",
  "_user": "emeyers",
  "_type": "src",
  "_file": "NeuroDecodeR_0.2.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/f2aa3e771d47c7c639710917bdbb405056ec068fe879ee400f1281b55a097c4a",
  "_filesize": 4336214,
  "_sha256": "f2aa3e771d47c7c639710917bdbb405056ec068fe879ee400f1281b55a097c4a",
  "_expires": "2027-01-09T10:35:01.000Z",
  "_created": "2026-10-01T10:30:31.000Z",
  "_published": "2026-10-01T10:35:05.132Z",
  "_jobs": [
    {
      "job": 110327881904,
      "time": 223,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11154888474"
    },
    {
      "job": 110327881909,
      "time": 216,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11154963059"
    },
    {
      "job": 110327881833,
      "time": 182,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11155365305"
    },
    {
      "job": 110327881939,
      "time": 219,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11155180628"
    },
    {
      "job": 110326127130,
      "time": 311,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11154688632"
    },
    {
      "job": 110327881676,
      "time": 118,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11155270542"
    },
    {
      "job": 110327881764,
      "time": 165,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11155115901"
    },
    {
      "job": 110327881818,
      "time": 163,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11155610131"
    },
    {
      "job": 110327881897,
      "time": 175,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11155450393"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842",
  "_status": "success",
  "_upstream": "https://github.com/emeyers/neurodecoder",
  "_commit": {
    "id": "826e2119a69d7879c3f58c75854272324dead2a7",
    "author": "Ethan Meyers <Ethan.Meyers@gmail.com>",
    "committer": "Ethan Meyers <Ethan.Meyers@gmail.com>",
    "message": "Exported the aggregate functions for rm_main_result and rm_confusion_matrix to get it to pass the Windows checks. Hopefully this will not make these methods public.\n",
    "time": 1710477925
  },
  "_maintainer": {
    "name": "Ethan Meyers",
    "email": "ethan.meyers@gmail.com",
    "login": "emeyers",
    "description": "",
    "uuid": 8442743
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "doSNOW",
      "role": "Imports"
    },
    {
      "package": "e1071",
      "role": "Imports"
    },
    {
      "package": "forcats",
      "role": "Imports"
    },
    {
      "package": "foreach",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "gridExtra",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "R.matlab",
      "role": "Imports"
    },
    {
      "package": "scales",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "stringr",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "tictoc",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    }
  ],
  "_owner": "emeyers",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_stars": 14,
  "_contributors": [
    {
      "user": "emeyers",
      "count": 534,
      "uuid": 8442743
    },
    {
      "user": "lilyrithi",
      "count": 11,
      "uuid": 29405372
    },
    {
      "user": "muschellij2",
      "count": 5,
      "uuid": 1075118
    },
    {
      "user": "michaelzzs",
      "count": 2,
      "uuid": 54911896
    },
    {
      "user": "priscillachand",
      "count": 2,
      "uuid": 40178508
    },
    {
      "user": "olivroy",
      "count": 1,
      "uuid": 52606734
    },
    {
      "user": "tuotuoz",
      "count": 1,
      "uuid": 40042621
    }
  ],
  "_userbio": {
    "uuid": 8442743,
    "type": "user",
    "name": "Ethan Meyers",
    "followers": 20
  },
  "_downloads": {
    "count": 335,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/NeuroDecodeR"
  },
  "_devurl": "https://github.com/emeyers/neurodecoder",
  "_pkgdown": "https://emeyers.github.io/NeuroDecodeR/",
  "_searchresults": 22,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NeuroDecodeR.html",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_homeurl": "https://github.com/emeyers/neurodecoder",
  "_realowner": "emeyers",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2022-09-29"
    },
    {
      "version": "0.2.0",
      "date": "2024-03-15"
    }
  ],
  "_exports": [
    "aggregate_CV_split_results",
    "aggregate_resample_run_results",
    "cl_max_correlation",
    "cl_poisson_naive_bayes",
    "cl_svm",
    "convert_matlab_raster_data",
    "create_binned_data",
    "cv_standard",
    "ds_basic",
    "ds_generalization",
    "fp_select_k_features",
    "fp_zscore",
    "get_data",
    "get_num_label_repetitions",
    "get_parameters",
    "get_predictions",
    "get_siteIDs_with_k_label_repetitions",
    "log_check_results_already_exist",
    "log_load_results_from_params",
    "log_load_results_from_result_name",
    "log_save_results",
    "plot_main_results",
    "preprocess_data",
    "read_matlab_raster_data",
    "read_raster_data",
    "rm_confusion_matrix",
    "rm_main_results",
    "run_decoding",
    "test_valid_ndr_object",
    "test_valid_raster_format"
  ],
  "_help": [
    {
      "page": "cl_max_correlation",
      "title": "A maximum correlation coefficient classifier (CL)",
      "concept": [
        "classifier"
      ],
      "topics": [
        "cl_max_correlation"
      ]
    },
    {
      "page": "cl_poisson_naive_bayes",
      "title": "A Poisson Naive Bayes classifier (CL)",
      "concept": [
        "classifier"
      ],
      "topics": [
        "cl_poisson_naive_bayes"
      ]
    },
    {
      "page": "cl_svm",
      "title": "A support vector machine classifier (CL)",
      "concept": [
        "classifier"
      ],
      "topics": [
        "cl_svm"
      ]
    },
    {
      "page": "convert_matlab_raster_data",
      "title": "Convert raster data in MATLAB to R",
      "topics": [
        "convert_matlab_raster_data"
      ]
    },
    {
      "page": "create_binned_data",
      "title": "Convert data from raster format to binned format",
      "topics": [
        "create_binned_data"
      ]
    },
    {
      "page": "cv_standard",
      "title": "The standard cross-validator (CV)",
      "concept": [
        "cross-validator"
      ],
      "topics": [
        "cv_standard"
      ]
    },
    {
      "page": "ds_basic",
      "title": "A basic datasource (DS)",
      "concept": [
        "datasource"
      ],
      "topics": [
        "ds_basic"
      ]
    },
    {
      "page": "ds_generalization",
      "title": "A datasource (DS) that allows training and testing on different but related labels",
      "concept": [
        "datasource"
      ],
      "topics": [
        "ds_generalization"
      ]
    },
    {
      "page": "fp_select_k_features",
      "title": "A feature preprocessor (FP) that reduces data to the k most selective features",
      "concept": [
        "feature_preprocessor"
      ],
      "topics": [
        "fp_select_k_features"
      ]
    },
    {
      "page": "fp_zscore",
      "title": "A feature preprocessor (FP) that z-score normalizes the data",
      "concept": [
        "feature_preprocessor"
      ],
      "topics": [
        "fp_zscore"
      ]
    },
    {
      "page": "get_num_label_repetitions",
      "title": "Get the number of sites have at least k trials of each label level",
      "topics": [
        "get_num_label_repetitions"
      ]
    },
    {
      "page": "get_num_label_repetitions_each_site",
      "title": "Get the number of trial repetitions for a given label for each site",
      "topics": [
        "get_num_label_repetitions_each_site"
      ]
    },
    {
      "page": "get_parameters.cv_standard",
      "title": "Get parameters of an NeuroDecodeR object",
      "topics": [
        "get_parameters.cv_standard"
      ]
    },
    {
      "page": "get_siteIDs_with_k_label_repetitions",
      "title": "Get the sitesIDs that have at least k trials for all label level",
      "topics": [
        "get_siteIDs_with_k_label_repetitions"
      ]
    },
    {
      "page": "log_check_results_already_exist",
      "title": "A function that checks if a decoding analysis has already been run",
      "topics": [
        "log_check_results_already_exist"
      ]
    },
    {
      "page": "log_load_results_from_params",
      "title": "A function that loads DECODING_RESULTS based on decoding_parameters",
      "topics": [
        "log_load_results_from_params"
      ]
    },
    {
      "page": "log_load_results_from_result_name",
      "title": "A function that loads DECODING_RESULTS based on the result_name",
      "topics": [
        "log_load_results_from_result_name"
      ]
    },
    {
      "page": "log_save_results",
      "title": "Saves the DECODING_RESULTS and logs the parameters used in the analysis",
      "topics": [
        "log_save_results"
      ]
    },
    {
      "page": "plot_main_results",
      "title": "A plot function to plot multiple rm_main_results",
      "concept": [
        "result_metrics"
      ],
      "topics": [
        "plot_main_results"
      ]
    },
    {
      "page": "plot.label_repetition",
      "title": "A plot function for label_repetition object",
      "topics": [
        "plot.label_repetition"
      ]
    },
    {
      "page": "plot.raster_data",
      "title": "A plot function for data in raster format",
      "topics": [
        "plot.raster_data"
      ]
    },
    {
      "page": "plot.rm_confusion_matrix",
      "title": "A plot function for the rm_confusion_matrix object",
      "concept": [
        "result_metrics"
      ],
      "topics": [
        "plot.rm_confusion_matrix"
      ]
    },
    {
      "page": "plot.rm_main_results",
      "title": "A plot function for the rm_main_results object",
      "concept": [
        "result_metrics"
      ],
      "topics": [
        "plot.rm_main_results"
      ]
    },
    {
      "page": "read_raster_data",
      "title": "Read a csv, rda, rds or mat file in raster format",
      "topics": [
        "read_raster_data"
      ]
    },
    {
      "page": "rm_confusion_matrix",
      "title": "A result metric (RM) that calculates confusion matrices",
      "concept": [
        "result_metrics"
      ],
      "topics": [
        "rm_confusion_matrix"
      ]
    },
    {
      "page": "rm_main_results",
      "title": "A result metric (RM) that calculates main decoding accuracy measures",
      "concept": [
        "result_metrics"
      ],
      "topics": [
        "rm_main_results"
      ]
    },
    {
      "page": "run_decoding.cv_standard",
      "title": "A cross-validator (CV) method to run a decoding analysis",
      "topics": [
        "run_decoding.cv_standard"
      ]
    },
    {
      "page": "test_valid_raster_format",
      "title": "Tests if a data frame is in valid raster format",
      "topics": [
        "test_valid_raster_format"
      ]
    }
  ],
  "_readme": "https://github.com/emeyers/neurodecoder/raw/HEAD/README.md",
  "_rundeps": [
    "class",
    "cli",
    "codetools",
    "cpp11",
    "doSNOW",
    "dplyr",
    "e1071",
    "farver",
    "forcats",
    "foreach",
    "generics",
    "ggplot2",
    "glue",
    "gridExtra",
    "gtable",
    "isoband",
    "iterators",
    "labeling",
    "lifecycle",
    "magrittr",
    "pillar",
    "pkgconfig",
    "proxy",
    "purrr",
    "R.matlab",
    "R.methodsS3",
    "R.oo",
    "R.utils",
    "R6",
    "RColorBrewer",
    "rlang",
    "S7",
    "scales",
    "snow",
    "stringi",
    "stringr",
    "tibble",
    "tictoc",
    "tidyr",
    "tidyselect",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "data_formats.Rmd",
      "filename": "data_formats.html",
      "title": "Data formats",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Raster format",
        "Checking if data is in valid raster format",
        "Example raster-format data",
        "Binned format",
        "Checking if data is in valid binned format",
        "Example binned-format data"
      ],
      "created": "2020-07-08 17:57:23",
      "modified": "2021-07-09 23:45:42",
      "commits": 9
    },
    {
      "source": "datasets.Rmd",
      "filename": "datasets.html",
      "title": "Datasets",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Zhang-Desimone 7 object dataset",
        "Accessing the dataset",
        "Qi-Constantinidis pre and post training dataset",
        "Isik 26 letter MEG dataset"
      ],
      "created": "2020-07-08 21:00:32",
      "modified": "2022-09-19 01:26:25",
      "commits": 8
    },
    {
      "source": "generalization_tutorial.Rmd",
      "filename": "generalization_tutorial.html",
      "title": "Generalization analysis tutorial",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Testing invariant neural representations using the NDR",
        "Using the Zhang-Desimone 7 object dataset to test position invariance",
        "Binning the data",
        "Creating a classifier and a preprocessor",
        "Using the ds_generalization to train and test at different locations",
        "Training and testing at all locations",
        "Plotting the results"
      ],
      "created": "2020-06-17 14:54:00",
      "modified": "2022-09-27 17:38:48",
      "commits": 17
    },
    {
      "source": "introduction_tutorial.Rmd",
      "filename": "introduction_tutorial.html",
      "title": "Introductory tutorial",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Overview of the NDR",
        "About the data used in this tutorial",
        "Data formats",
        "Raster format",
        "Binning the data",
        "Determining how many times each condition was repeated",
        "Performing a decoding analysis",
        "Creating a Datasource (DS)",
        "Creating a feature-preprocessor (FP)",
        "Creating a classifier (CL)",
        "Creating result metrics (RM)",
        "Creating a cross-validator (CV)",
        "Running the decoding analysis",
        "Plotting the results",
        "Plotting the main results",
        "Plotting confusion matrices",
        "Saving the results",
        "Running an analysis using the pipe (|>) operator"
      ],
      "created": "2019-07-26 18:28:16",
      "modified": "2022-09-30 01:46:41",
      "commits": 32
    },
    {
      "source": "NDR_object_specification.Rmd",
      "filename": "NDR_object_specification.html",
      "title": "NeuroDecodeR object specification",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Datasources (DS)",
        "Implementing an DS: methods and data formats",
        "Example of internals of DS objects using the ds_basic object",
        "Feature preprocessors (FP)",
        "Implementing an FP: required methods and data formats",
        "training_set",
        "test_set",
        "Example of internals of FP objects using the fp_zscore",
        "Classifiers (CL)",
        "Implementing a CL: required methods and data formats",
        "Example of internals of CL object using the cl_max_correlation",
        "Result metrics (RM)",
        "Implementing an RM: required methods and data formats",
        "aggregate_CV_split_results() method",
        "aggregate_resample_run_results() method",
        "Example of result metrics",
        "Cross-validators (CV)",
        "Implementing a CV: required methods and data formats",
        "Example of cross-validators"
      ],
      "created": "2020-08-11 22:39:56",
      "modified": "2022-09-30 01:46:41",
      "commits": 5
    }
  ],
  "_score": 6.664641975556126,
  "_indexed": true,
  "_nocasepkg": "neurodecoder",
  "_universes": [
    "emeyers"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-01T10:33:00.000Z",
      "distro": "resolute",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/cef247f8e572754f48e82ef7aaf1da5a3e8819614c41a267bcbbed2bd3134ca3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-01T10:33:02.000Z",
      "distro": "resolute",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/39c82dcdc38263725b594d2812fc07a2bcbb5e3f978a47d6d0fc22e5a1a3c3c1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-01T10:32:37.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/b93fbdbfbea3944a78b20cdb399355cc37882d20f550cf0df7a553c16119e7c1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-01T10:32:56.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/a72aa8dc22f22d3e4d562f6372be06cb55a0aae81cfb80657327a8611e0731eb",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.0",
      "date": "2026-10-01T10:32:50.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/ef25e914d2f9ec6c2f3e4ae25a728bb37fd0e5a6fd00d776ce6f919744b571d5",
      "status": "success",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-01T10:31:46.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/f439e96cccb3fd1aef5a7dd1318219c8fa2677ee4436b1a4e489468919f2ec1f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-01T10:31:45.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/74f40c5f0886c86f5cb2c4b6d3ee3c417ad978de0918e1d4dd6d96970e51ca8a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-01T10:31:59.000Z",
      "commit": "826e2119a69d7879c3f58c75854272324dead2a7",
      "fileid": "https://r2.ropensci.org/28a800213b2faeaf6fbf384f149f023ba3f2cb2ef919f214a0ef6bc23a528b5a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/emeyers/actions/runs/36849024842"
    }
  ]
}