diff --git a/.Rbuildignore b/.Rbuildignore index 5cfaa1ecb..6e6b8b401 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -16,6 +16,7 @@ ^\.devcontainer$ ^\.graphics$ ^\.github$ +^\.zed$ ^\.gitlab-ci\.yml$ diff --git a/.ci/.lintr.R b/.ci/.lintr.R index 6659efbc8..2481ecec9 100644 --- a/.ci/.lintr.R +++ b/.ci/.lintr.R @@ -1,5 +1,5 @@ dt_linters = new.env() -for (f in list.files('.ci/linters', full.names=TRUE)) sys.source(f, dt_linters) +for (f in list.files('.ci/linters/r', full.names=TRUE)) sys.source(f, dt_linters) rm(f) # NB: Could do this inside the linter definition, this separation makes those files more standardized diff --git a/.ci/linters/c/alloc_linter.R b/.ci/linters/c/alloc_linter.R new file mode 100644 index 000000000..a94bc27a9 --- /dev/null +++ b/.ci/linters/c/alloc_linter.R @@ -0,0 +1,36 @@ +# Ensure that we check the result of malloc()/calloc() for success +# More specifically, given that this is an AST-ignorant checker, +# 1. Find groups of malloc()/calloc() calls +# 2. Check the next line for a check like 'if (!x || !y)' +alloc_linter = function(c_file) { + lines <- readLines(c_file) + # Be a bit more precise to avoid mentions in comments + alloc_lines <- grep(R"{=\s*([(]\w+\s*[*][)])?[mc]alloc[(]}", lines) + if (!length(alloc_lines)) return() + # int *tmp=(int*)malloc(...); or just int tmp=malloc(...); + alloc_keys <- lines[alloc_lines] |> + strsplit(R"(\s*=\s*)") |> + vapply(head, 1L, FUN.VALUE="") |> + trimws() |> + # just normalize the more exotic assignments, namely 'type *restrict key = ...' + gsub(pattern = "[*]\\s*(restrict\\s*)?", replacement = "*") |> + strsplit("*", fixed=TRUE) |> + vapply(tail, 1L, FUN.VALUE="") + alloc_grp_id <- cumsum(c(TRUE, diff(alloc_lines) != 1L)) + + # execute by group + tapply(seq_along(alloc_lines), alloc_grp_id, function(grp_idx) { + keys_regex <- paste0("\\s*!\\s*", alloc_keys[grp_idx], "\\s*", collapse = "[|][|]") + check_regex <- paste0("if\\s*\\(", keys_regex) + check_line <- lines[alloc_lines[tail(grp_idx, 1L)] + 1L] + # Rarely (once in fread.c as of initialization), error checking is handled + # but not immediately, so use 'NOCHECK' to escape. + if (!grepl(check_regex, check_line) && !grepl("NOCHECK", check_line, fixed=TRUE)) { + bad_lines_idx <- seq(alloc_lines[grp_idx[1L]], length.out=length(grp_idx)+1L) + cat("FILE: ", c_file, "; LINES: ", head(bad_lines_idx, 1L), "-", tail(bad_lines_idx, 1L), "\n", sep="") + writeLines(lines[bad_lines_idx]) + cat(strrep("-", max(nchar(lines[bad_lines_idx]))), "\n", sep="") + stop("Expected the malloc()/calloc() usage above to be followed immediately by error checking.", call.=FALSE) + } + }) +} diff --git a/.ci/linters/dt_lengths_linter.R b/.ci/linters/r/dt_lengths_linter.R similarity index 100% rename from .ci/linters/dt_lengths_linter.R rename to .ci/linters/r/dt_lengths_linter.R diff --git a/.ci/linters/dt_test_literal_linter.R b/.ci/linters/r/dt_test_literal_linter.R similarity index 100% rename from .ci/linters/dt_test_literal_linter.R rename to .ci/linters/r/dt_test_literal_linter.R diff --git a/.dev/CRAN_Release.cmd b/.dev/CRAN_Release.cmd index 3dd9b2d7e..ebf17bcd2 100644 --- a/.dev/CRAN_Release.cmd +++ b/.dev/CRAN_Release.cmd @@ -17,11 +17,12 @@ Rscript -e "tools::update_pkg_po('.')" # 2) Open a PR with the new templates & contact the translators # * zh_CN: @hongyuanjia +# * pt_BR: @rffontenelle ## Translators to submit commits with translations to this PR ## [or perhaps, if we get several languages, each to open ## its own PR and merge to main translation PR] -## 3) Check validity with tools::checkPoFiles("zh_CN") +## 3) Check validity with tools::checkPoFiles(".*") ## 4) Compile the new .mo binary files with potools::po_compile() diff --git a/.github/workflows/R-CMD-check-occasional.yaml b/.github/workflows/R-CMD-check-occasional.yaml index b770bbe92..fe7f3a163 100644 --- a/.github/workflows/R-CMD-check-occasional.yaml +++ b/.github/workflows/R-CMD-check-occasional.yaml @@ -1,6 +1,6 @@ on: schedule: - - cron: '17 13 14 * *' # 14th of month at 13:17 UTC + - cron: '17 13 18 * *' # 18th of month at 13:17 UTC # A more complete suite of checks to run monthly; each PR/merge need not pass all these, but they should pass before CRAN release name: R-CMD-check-occasional @@ -83,11 +83,15 @@ jobs: run: brew install gdal proj - name: Install remotes + env: + R_LIBS_USER: /home/runner/work/r-lib run: install.packages("remotes") shell: Rscript {0} - name: Install system dependencies if: runner.os == 'Linux' + env: + R_LIBS_USER: /home/runner/work/r-lib run: | while read -r cmd do @@ -100,18 +104,14 @@ jobs: _R_CHECK_FORCE_SUGGESTS_: false _R_CHECK_CRAN_INCOMING_REMOTE_: false _R_CHECK_TESTS_NLINES_: 0 + R_LIBS_USER: /home/runner/work/r-lib run: | options(crayon.enabled = TRUE) - + install.packages("remotes") # different R_LIBS_USER now... remotes::install_deps(dependencies=TRUE, force=TRUE) - other_deps_expr = parse('inst/tests/other.Rraw', n=1L) - eval(other_deps_expr) - pkgs <- get(as.character(other_deps_expr[[1L]][[2L]])) - # Many will not install on oldest R versions - try(remotes::install_cran(c(pkgs, "rcmdcheck"), force=TRUE)) # we define this in data.table namespace, but it appears to be exec - if (!exists("isFALSE", "package:base")) { + if (!exists("isFALSE", "package:base")) { # R>=3.5.0 if (!exists("isFALSE", asNamespace("data.table"))) { message("isFALSE not found in base, but data.table did not define it either!\n") } @@ -119,27 +119,41 @@ jobs: isFALSE = function(x) is.logical(x) && length(x) == 1L && !is.na(x) && !x } - has_pkg = sapply(pkgs, requireNamespace, quietly=TRUE) - run_other = all(has_pkg) + other_deps_expr = parse('inst/tests/other.Rraw', n=1L) + eval(other_deps_expr) + other_pkgs = get(as.character(other_deps_expr[[1L]][[2L]])) + # Many will not install on oldest R versions + try(remotes::install_cran(c(other_pkgs, "rcmdcheck"), force=TRUE)) + + has_other_pkg = sapply(other_pkgs, requireNamespace, quietly=TRUE) + run_other = all(has_other_pkg) if (!run_other) { - message(sprintf("Skipping other.Rraw since some required packages are not available: %s\n", toString(pkgs[!has_pkg]))) + message(sprintf("Skipping other.Rraw since some required packages are not available: %s\n", toString(other_pkgs[!has_other_pkg]))) + } + message("Will try and set TEST_DATA_TABLE_WITH_OTHER_PACKAGES=", as.character(run_other), " in R CMD check.") + # IINM rcmdcheck isolates its env from the calling process', besides what's passed to env= + env = c( + TEST_DATA_TABLE_WITH_OTHER_PACKAGES=as.character(run_other), + R_LIBS_USER=Sys.getenv("R_LIBS_USER") + ) + + do_vignettes = requireNamespace("knitr", quietly=TRUE) + + build_args = NULL + check_args = c("--no-manual", "--as-cran") + if (!do_vignettes) { + message("Skipping vignettes since knitr is unavailable.") + build_args = "--no-build-vignettes" + check_args = c(check_args, "--no-build-vignettes", "--ignore-vignettes") } - Sys.setenv(TEST_DATA_TABLE_WITH_OTHER_PACKAGES=as.character(run_other)) - - do_vignettes <- requireNamespace("knitr", quietly=TRUE) - - vignette_args <- if (!do_vignettes) "--no-build-vignettes" - args <- c("--no-manual", "--as-cran", vignette_args) if (requireNamespace("rcmdcheck", quietly=TRUE)) { - rcmdcheck::rcmdcheck(args = args, error_on = "warning", check_dir = "check") + rcmdcheck::rcmdcheck(args = check_args, build_args = build_args, error_on = "warning", check_dir = "check", env=env) } else { Rbin = if (.Platform$OS.type == "windows") "R.exe" else "R" - system2(Rbin, c("CMD", "build", ".", vignette_args)) - dt_tar <- list.files(pattern = "^data[.]table_.*[.]tar[.]gz$") + system2(Rbin, c("CMD", "build", ".", build_args)) + dt_tar = list.files(pattern = "^data[.]table_.*[.]tar[.]gz$") if (!length(dt_tar)) stop("Built tar.gz not found among: ", toString(list.files())) - # --no-build-vignettes is not enough for R CMD check - if (!do_vignettes) args <- c(args, "--ignore-vignettes") - res = system2(Rbin, c("CMD", "check", dt_tar[1L], args), stdout=TRUE) + res = system2(Rbin, c("CMD", "check", dt_tar[1L], check_args), stdout=TRUE, env=sprintf("%s=%s", names(env), env)) if (!is.null(attr(res, "status")) || grep("^Status:.*(ERROR|WARNING)", res)) { writeLines(res) stop("R CMD check failed") diff --git a/.github/workflows/lint.yaml b/.github/workflows/code-quality.yaml similarity index 51% rename from .github/workflows/lint.yaml rename to .github/workflows/code-quality.yaml index 92d3a1c5e..f9066eacd 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/code-quality.yaml @@ -6,10 +6,10 @@ on: branches: - master -name: lint +name: code-quality jobs: - lint: + lint-r: runs-on: ubuntu-latest env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} @@ -28,8 +28,21 @@ jobs: needs: lint - name: Lint - run: lintr::lint_package(pattern = "(?i)[.](r|rmd|rraw)$") # TODO(#5830): use the default pattern + run: lintr::lint_package(pattern = "(?i)[.](r|rmd)$") # TODO(#5830): use the default pattern shell: Rscript {0} env: LINTR_ERROR_ON_LINT: true R_LINTR_LINTER_FILE: .ci/.lintr + lint-c: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: r-lib/actions/setup-r@v2 + - name: Lint + run: | + for (f in list.files('.ci/linters/c', full.names=TRUE)) source(f) + for (f in list.files('src', pattern='[.]c$', full.names=TRUE)) { + alloc_linter(f) + # TODO(#6272): Incorporate more checks from CRAN_Release + } + shell: Rscript {0} diff --git a/.github/workflows/pkgup.yaml b/.github/workflows/pkgup.yaml index 67541f4e6..59288cc6d 100644 --- a/.github/workflows/pkgup.yaml +++ b/.github/workflows/pkgup.yaml @@ -12,6 +12,8 @@ on: branches: - 'master' +name: pkgdown-deploy + jobs: build: name: data.table diff --git a/.gitignore b/.gitignore index 9dd72b5c0..572d7352c 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,9 @@ config.log .Rproj.user data.table.Rproj +# zed editor +.zed + # produced vignettes vignettes/*.html vignettes/*.pdf diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ace646734..8a3fa4d71 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -117,8 +117,8 @@ test-lin-rel: OPENBLAS_MAIN_FREE: "1" script: - *install-deps - - echo 'CFLAGS=-g -O3 -flto=auto -fno-common -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars - - echo 'CXXFLAGS=-g -O3 -flto=auto -fno-common -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars + - echo 'CFLAGS=-g -O3 -flto=auto -fno-common -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars + - echo 'CXXFLAGS=-g -O3 -flto=auto -fno-common -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars - R CMD check $(ls -1t data.table_*.tar.gz | head -n 1) - (! grep "warning:" data.table.Rcheck/00install.out) @@ -132,8 +132,8 @@ test-lin-rel-vanilla: <<: *test-lin image: registry.gitlab.com/jangorecki/dockerfiles/r-base-gcc script: - - echo 'CFLAGS=-g -O0 -fno-openmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars - - echo 'CXXFLAGS=-g -O0 -fno-openmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars + - echo 'CFLAGS=-g -O0 -fno-openmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars + - echo 'CXXFLAGS=-g -O0 -fno-openmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars - R CMD check --no-manual --ignore-vignettes $(ls -1t data.table_*.tar.gz | head -n 1) ## R-release on Linux @@ -149,8 +149,8 @@ test-lin-rel-cran: _R_CHECK_PKG_SIZES_THRESHOLD_: "7" ## MB 'checking installed package size' NOTE script: - *install-deps - - echo 'CFLAGS=-g -O2 -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars - - echo 'CXXFLAGS=-g -O2 -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars + - echo 'CFLAGS=-g -O2 -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars + - echo 'CXXFLAGS=-g -O2 -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars - R CMD check --as-cran $(ls -1t data.table_*.tar.gz | head -n 1) - >- Rscript -e 'l=tail(readLines("data.table.Rcheck/00check.log"), 1L); if (!identical(l, "Status: OK")) stop("Last line of ", shQuote("00check.log"), " is not ", shQuote("Status: OK"), " but ", shQuote(l)) else q("no")' @@ -168,8 +168,8 @@ test-lin-dev-gcc-strict-cran: _R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_: "FALSE" ## detects S3 method lookup found on search path #4777 _R_S3_METHOD_LOOKUP_REPORT_SEARCH_PATH_USES_: "TRUE" script: - - echo 'CFLAGS=-g -O2 -flto=auto -fno-common -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars - - echo 'CXXFLAGS=-g -O2 -flto=auto -fno-common -fopenmp -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars + - echo 'CFLAGS=-g -O2 -flto=auto -fno-common -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars + - echo 'CXXFLAGS=-g -O2 -flto=auto -fno-common -fopenmp -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars - *install-deps - R CMD check --as-cran $(ls -1t data.table_*.tar.gz | head -n 1) - (! grep "warning:" data.table.Rcheck/00install.out) @@ -189,8 +189,8 @@ test-lin-dev-clang-cran: _R_S3_METHOD_LOOKUP_BASEENV_AFTER_GLOBALENV_: "FALSE" _R_S3_METHOD_LOOKUP_REPORT_SEARCH_PATH_USES_: "TRUE" script: - - echo 'CFLAGS=-g -O2 -fno-common -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars - - echo 'CXXFLAGS=-g -O2 -fno-common -Wall -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars + - echo 'CFLAGS=-g -O2 -fno-common -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' > ~/.R/Makevars + - echo 'CXXFLAGS=-g -O2 -fno-common -Wall -Wvla -pedantic -fstack-protector-strong -D_FORTIFY_SOURCE=2' >> ~/.R/Makevars - *install-deps - R CMD check --as-cran $(ls -1t data.table_*.tar.gz | head -n 1) - (! grep "warning:" data.table.Rcheck/00install.out) diff --git a/DESCRIPTION b/DESCRIPTION index 7035cfcad..b78495edc 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -18,7 +18,7 @@ Authors@R: c( person("Jan","Gorecki", role="aut"), person("Michael","Chirico", role="aut", comment = c(ORCID="0000-0003-0787-087X")), person("Toby","Hocking", role="aut", comment = c(ORCID="0000-0002-3146-0865")), - person("Benjamin","Schwendinger",role="aut"), + person("Benjamin","Schwendinger",role="aut", comment = c(ORCID="0000-0003-3315-8114")), person("Pasha","Stetsenko", role="ctb"), person("Tom","Short", role="ctb"), person("Steve","Lianoglou", role="ctb"), diff --git a/NEWS.md b/NEWS.md index 262aace17..f23859487 100644 --- a/NEWS.md +++ b/NEWS.md @@ -66,7 +66,9 @@ 12. data.table's `all.equal()` method now dispatches to each column's own `all.equal()` method as appropriate, [#4543](https://github.com/Rdatatable/data.table/issues/4543). Thanks @MichaelChirico for the report and fix. Note that this had two noteworthy changes to data.table's own test suite that might affect you: (1) comparisons of POSIXct columns compare absolute, not relative differences, meaning that millisecond-scale differences might trigger a "not equal" report that was hidden before; and (2) comparisons of integer64 columns could be totally wrong since they were being compared on the basis of their representation as doubles, not long integers. The former might be a matter of preference requiring you to specify a different `tolerance=`, while the latter was clearly a bug. -12. `rbindlist` could lead to a protection stack overflow when applied to a list containing many nested lists exceeding the pointer protection stack size, [#4536](https://github.com/Rdatatable/data.table/issues/4536). Thanks to @ProfFancyPants for reporting, and Benjamin Schwendinger for the fix. +13. `rbindlist` could lead to a protection stack overflow when applied to a list containing many nested lists exceeding the pointer protection stack size, [#4536](https://github.com/Rdatatable/data.table/issues/4536). Thanks to @ProfFancyPants for reporting, and Benjamin Schwendinger for the fix. + +14. `fread(x, colClasses="POSIXct")` now also works for columns containing only NA values, [#6208](https://github.com/Rdatatable/data.table/issues/6208). Thanks to @markus-schaffer for the report, and Benjamin Schwendinger for the fix. ## NOTES @@ -116,10 +118,16 @@ 21. Refactored some non-API calls to R macros for S4 objects (#6180)[https://github.com/Rdatatable/data.table/issues/6180]. There should be no user-visible change. Thanks to various R users & R core for pushing to have a clearer definition of "API" for R, and thanks @MichaelChirico for implementing here. +22. C code was unified more in how failures to allocate memory (`malloc()`/`calloc()`) are handled, (#1115)[https://github.com/Rdatatable/data.table/issues/1115]. No OOM issues were reported, as these regions of code typically request relatively small blocks of memory, but it is good to handle memory pressure consistently. Thanks @elfring for the report and @MichaelChirico for the clean-up effort and future-proofing linter. + ## TRANSLATIONS 1. Fix a typo in a Mandarin translation of an error message that was hiding the actual error message, [#6172](https://github.com/Rdatatable/data.table/issues/6172). Thanks @trafficfan for the report and @MichaelChirico for the fix. +2. data.table is now translated into Brazilian Portuguese (`pt_BR`) as well as Mandarin (`zh_CN`). Thanks to the [new translation team](https://github.com/orgs/Rdatatable/teams/brazil) consisting initially of @rffontenelle, @leofontenelle, and @italo-07. The team is open if you'd also like to join and support maintenance of these translations. + +3. A more helpful error message for using `:=` inside the first argument (`i`) of `[.data.table` is now available in translation, [#6293](https://github.com/Rdatatable/data.table/issues/6293). Previously, the code to display this assumed an earlier message was printed in English. The solution is for calling `:=` directly (i.e., outside the second argument `j` of `[.data.table`) to throw an error of class `dt_invalid_let_error`. Thanks to Spanish translator @rikivillalba for spotting the issue and @MichaelChirico for the fix. + # data.table [v1.15.4](https://github.com/Rdatatable/data.table/milestone/33) (27 March 2024) ## BUG FIXES diff --git a/R/bmerge.R b/R/bmerge.R index f32a19f42..881b8528e 100644 --- a/R/bmerge.R +++ b/R/bmerge.R @@ -102,7 +102,7 @@ bmerge = function(i, x, icols, xcols, roll, rollends, nomatch, mult, ops, verbos if (!isReallyReal(i[[ic]])) { # common case of ad hoc user-typed integers missing L postfix joining to correct integer keys # we've always coerced to int and returned int, for convenience. - if (verbose) catf("Coercing double column %s (which contains no fractions) to type integer to match type of %s", iname, xname) + if (verbose) catf("Coercing double column %s (which contains no fractions) to type integer to match type of %s.\n", iname, xname) val = as.integer(i[[ic]]) if (!is.null(attributes(i[[ic]]))) attributes(val) = attributes(i[[ic]]) # to retain Date for example; 3679 set(i, j=ic, value=val) diff --git a/R/data.table.R b/R/data.table.R index 133c987fe..072da0cdc 100644 --- a/R/data.table.R +++ b/R/data.table.R @@ -392,13 +392,11 @@ replace_dot_alias = function(e) { } else if (!is.name(isub)) { ienv = new.env(parent=parent.frame()) - if (getOption("datatable.optimize")>=1L) assign("order", forder, ienv) - i = tryCatch(eval(.massagei(isub), x, ienv), error=function(e) { - if (grepl(":=.*defined for use in j.*only", e$message)) - stopf("Operator := detected in i, the first argument inside DT[...], but is only valid in the second argument, j. Most often, this happens when forgetting the first comma (e.g. DT[newvar := 5] instead of DT[ , new_var := 5]). Please double-check the syntax. Run traceback(), and debugger() to get a line number.") - else - .checkTypos(e, names_x) - }) + if (getOption("datatable.optimize") >= 1L) assign("order", forder, ienv) + i = tryCatch(eval(.massagei(isub), x, ienv), + dt_invalid_let_error = function(e) stopf("Operator := detected in i, the first argument inside DT[...], but is only valid in the second argument, j. Most often, this happens when forgetting the first comma (e.g. DT[newvar := 5] instead of DT[ , new_var := 5]). Please double-check the syntax. Run traceback(), and debugger() to get a line number."), + error = function(e) .checkTypos(e, names_x) + ) } else { # isub is a single symbol name such as B in DT[B] i = try(eval(isub, parent.frame(), parent.frame()), silent=TRUE) @@ -1987,11 +1985,11 @@ DT = function(x, ...) { #4872 .optmean = function(expr) { # called by optimization of j inside [.data.table only. Outside for a small speed advantage. if (length(expr)==2L) # no parameters passed to mean, so defaults of trim=0 and na.rm=FALSE - return(call(".External",quote(Cfastmean),expr[[2L]], FALSE)) + return(call(".External", quote(Cfastmean), expr[[2L]], FALSE)) # return(call(".Internal",expr)) # slightly faster than .External, but R now blocks .Internal in coerce.c from apx Sep 2012 - if (length(expr)==3L && startsWith(names(expr)[3L], "na")) # one parameter passed to mean() - return(call(".External",quote(Cfastmean),expr[[2L]], expr[[3L]])) # faster than .Call - assign("nomeanopt",TRUE,parent.frame()) + if (length(expr)==3L && .arg_is_narm(expr)) + return(call(".External", quote(Cfastmean), expr[[2L]], expr[[3L]])) # faster than .Call + assign("nomeanopt", TRUE, parent.frame()) expr # e.g. trim is not optimized, just na.rm } @@ -2772,7 +2770,7 @@ address = function(x) .Call(Caddress, eval(substitute(x), parent.frame())) ":=" = function(...) { # this error is detected when eval'ing isub and replaced with a more helpful one when using := in i due to forgetting a comma, #4227 - stopf('Check that is.data.table(DT) == TRUE. Otherwise, :=, `:=`(...) and let(...) are defined for use in j, once only and in particular ways. See help(":=").') + stopf('Check that is.data.table(DT) == TRUE. Otherwise, :=, `:=`(...) and let(...) are defined for use in j, once only and in particular ways. Note that namespace-qualification like data.table::`:=`(...) is not supported. See help(":=").', class="dt_invalid_let_error") } # TODO(#6197): Export these. @@ -3072,13 +3070,17 @@ is_constantish = function(q, check_singleton=FALSE) { if (q1[[3L]] %chin% gdtfuns) return(q1[[3L]]) NULL } + +# Check for na.rm= in expr in the expected slot; allows partial matching and +# is robust to unnamed expr. Note that NA names are not possible here. +.arg_is_narm <- function(expr, which=3L) !is.null(nm <- names(expr)[which]) && startsWith(nm, "na") + .gforce_ok = function(q, x) { if (is.N(q)) return(TRUE) # For #334 q1 = .get_gcall(q) if (is.null(q1)) return(FALSE) if (!(q2 <- q[[2L]]) %chin% names(x) && q2 != ".I") return(FALSE) # 875 - if (length(q)==2L || (!is.null(names(q)) && startsWith(names(q)[3L], "na") && is_constantish(q[[3L]]))) return(TRUE) - # ^^ base::startWith errors on NULL unfortunately + if (length(q)==2L || (.arg_is_narm(q) && is_constantish(q[[3L]]))) return(TRUE) switch(as.character(q1), "shift" = .gshift_ok(q), "weighted.mean" = .gweighted.mean_ok(q, x), diff --git a/R/fread.R b/R/fread.R index b6371899e..68ce4830a 100644 --- a/R/fread.R +++ b/R/fread.R @@ -299,6 +299,7 @@ yaml=FALSE, autostart=NA, tmpdir=tempdir(), tz="UTC") for (j in which(nzchar(colClassesAs))) { # # 1634 v = .subset2(ans, j) new_class = colClassesAs[j] + if (new_class %chin% c("POSIXct")) v[!nzchar(v)] = NA_character_ # as.POSIXct/as.POSIXlt cannot handle as.POSIXct("") correctly #6208 new_v = tryCatch({ # different to read.csv; i.e. won't error if a column won't coerce (fallback with warning instead) switch(new_class, "factor" = as_factor(v), diff --git a/configure b/configure index 04fd8104f..853c0d5fa 100755 --- a/configure +++ b/configure @@ -111,7 +111,7 @@ detect_openmp () { # https://mac.r-project.org/openmp printf "%s" "* checking if R installation supports OpenMP with \"-Xclang -fopenmp\" ... " - if CPPFLAGS="${CPPFLAGS} -Xclang -fopenmp" LDFLAGS="${LDFLAGS} -lomp" "${R_HOME}/bin/R" CMD SHLIB test-omp.c >> config.log 2>&1; then + if CPPFLAGS="${CPPFLAGS} -Xclang -fopenmp" PKG_LIBS="-lomp" "${R_HOME}/bin/R" CMD SHLIB test-omp.c >> config.log 2>&1; then echo "yes" export PKG_CFLAGS="${PKG_CFLAGS} -Xclang -fopenmp" export PKG_LIBS="${PKG_LIBS} -lomp" diff --git a/inst/tests/other.Rraw b/inst/tests/other.Rraw index 35af1b5e4..79f64b487 100644 --- a/inst/tests/other.Rraw +++ b/inst/tests/other.Rraw @@ -29,8 +29,8 @@ loaded = sapply(pkgs, f) if (!all(loaded)) { options(warning.length=8000) stop( - "test.data.table('other.Rraw') failed to attach required package(s): ", toString(names(loaded)[!loaded]), ".", - "\nHere's all installed packages:\n ", paste(rownames(installed.packages()), collapse=","), + "test.data.table('other.Rraw') failed to attach required package(s): ", toString(sort(names(loaded)[!loaded])), ".", + "\nHere's all installed packages:\n ", paste(sort(rownames(installed.packages())), collapse=","), "\nHere's the search() path:\n ", paste(search(), collapse="->"), "\nIf you can't install them and this is R CMD check, please set environment variable TEST_DATA_TABLE_WITH_OTHER_PACKAGES back to the default, false; it's currently ", Sys.getenv("TEST_DATA_TABLE_WITH_OTHER_PACKAGES", ""), ".") # Would like to install them now for convenience but gitlab-ci.yml seems to install to bus/mirror-other-packages/cran. diff --git a/inst/tests/tests.Rraw b/inst/tests/tests.Rraw index 948e58107..020a4db3e 100644 --- a/inst/tests/tests.Rraw +++ b/inst/tests/tests.Rraw @@ -3194,7 +3194,7 @@ test(1034, as.data.table(x<-as.character(sample(letters, 5))), data.table(V1=x)) test(1035.02, melt(DT, id.vars=c("i_1", "i_2", "l_2"), measure.vars=c("l_1")), ans1) # melt retains attributes if all are of same type (new) - ans2 = data.table(c_1=DT$c_1, variable=rep(c("d_1", "d_2"), each=N), value=as.Date(c(DT$d_1, DT$d_2)))[!is.na(value)] + ans2 = data.table(c_1=DT$c_1, variable=rep(c("d_1", "d_2"), each=N), value=as.Date(c(DT$d_1, DT$d_2), origin="1970-01-01"))[!is.na(value)] # NB: origin= required for some old R versions test(1035.03, melt(DT, id.vars=4, measure.vars=5:6, na.rm=TRUE, variable.factor=FALSE), ans2) DT2 <- data.table(x=1:5, y=1+5i) # unimplemented class @@ -18337,8 +18337,10 @@ dt = data.table(x=1:4, y=factor(letters[1:2])) test(2247.1, split(dt, ~y), split(dt, dt$y)) dt = data.table(x=1:4, y=1:2) test(2247.2, split(dt, ~y), list(`1`=data.table(x=c(1L,3L), y=1L), `2`=data.table(x=c(2L, 4L), y=2L))) -# Closely match the original MRE from the issue -test(2247.3, do.call(rbind, split(dt, ~y)), setDT(do.call(rbind, split(as.data.frame(dt), ~y)))) +if (!inherits(tryCatch(split(mtcars, ~cyl), error=identity), "error")) { # R>=4.1.0 + # Closely match the original MRE from the issue + test(2247.3, do.call(rbind, split(dt, ~y)), setDT(do.call(rbind, split(as.data.frame(dt), ~y)))) +} dt = data.table(x=1:4, y=factor(letters[1:2]), z=factor(c(1,1,2,2), labels=c("c", "d"))) test(2247.4, split(dt, ~y+z), list("a.c"=dt[1], "b.c"=dt[2], "a.d"=dt[3], "b.d"=dt[4])) @@ -18732,3 +18734,17 @@ x = list( N = 5e4 y = x[rep(1:5, N)] test(2268, rbindlist(y, fill=TRUE), rbindlist(x, fill=TRUE)[rep(1:5, N)]) + +# fread cannot read all NA column as POSIXct #6208 +dt = data.table(x=as.POSIXct(c(NA, NA))) +test(2269.1, fread("x\n \n \n", colClasses="POSIXct"), dt) +test(2269.2, fread("x\n?\n \n", colClasses="POSIXct", na.strings="?"), dt) + +# Error found by revdep in #6284: mean(a,b) is valid, expr names() can be NULL +DT = data.table(a = 1, b = 2) +test(2270, options=c(datatable.optimize=1L), DT[, mean(b, 1), by=a], data.table(a=1, V1=2), warning="Unable to optimize call to mean()") + +# Missing newline in verbose output -> harder to read +DT1 = data.table(a=1:2) +DT2 = data.table(a=c(1, 1, 2, 2), b=1:4) +test(2271, options=c(datatable.verbose=TRUE), copy(DT1)[DT2, on='a', v := 4], copy(DT1)[, v := 4], output="x.a.\nAssigning") diff --git a/man/setattr.Rd b/man/setattr.Rd index 890abb03e..d5e4079cc 100644 --- a/man/setattr.Rd +++ b/man/setattr.Rd @@ -14,7 +14,7 @@ setnames(x,old,new,skip_absent=FALSE) \item{name}{ The character attribute name. } \item{value}{ The value to assign to the attribute or \code{NULL} removes the attribute, if present. } \item{old}{ When \code{new} is provided, character names or numeric positions of column names to change. When \code{new} is not provided, a function or the new column names (i.e., it's implicitly treated as \code{new}; excluding \code{old} and explicitly naming \code{new} is equivalent). If a function, it will be called with the current column names and is supposed to return the new column names. The new column names must be the same length as the number of columns. See examples. } - \item{new}{ Optional. It can be a function or the new column names. If a function, it will be called with \code{old} and expected to return the new column names. The new column names must be the same length as columns provided to \code{old} argument. } + \item{new}{ Optional. It can be a function or the new column names. If a function, it will be called with \code{old} and expected to return the new column names. The new column names must be the same length as columns provided to \code{old} argument. Missing values in \code{new} mean to not rename that column, note: missing values are only allowed when \code{old} is not provided.} \item{skip_absent}{ Skip items in \code{old} that are missing (i.e. absent) in `names(x)`. Default \code{FALSE} halts with error if any are missing. } } diff --git a/po/R-pt_BR.po b/po/R-pt_BR.po new file mode 100644 index 000000000..b0db1159c --- /dev/null +++ b/po/R-pt_BR.po @@ -0,0 +1,3631 @@ +# +# Translators: +# Italo Santos , 2024 +# Leonardo Fontenelle , 2024 +# Rafael Fontenelle , 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: data.table 1.15.99\n" +"POT-Creation-Date: 2024-06-23 12:07-0300\n" +"PO-Revision-Date: 2024-06-20 20:50-0300\n" +"Last-Translator: Leonardo Fontenelle \n" +"Language-Team: Brazilian Portuguese\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: AllS4.R:2 +#, c-format +msgid "data.table package loaded. When developing don't load package" +msgstr "Pacote data.table carregado. Ao desenvolver, não carregue o pacote" + +#: IDateTime.R:101 +#, c-format +msgid "" +"Internal error -- difftime objects may not be added to IDate, but Ops " +"dispatch should have intervened to prevent this" +msgstr "" +"Erro interno -- objetos difftime não podem ser adicionados a IDate, mas o " +"despacho de Ops deveria ter intervindo para evitar isso" + +#: IDateTime.R:107 +#, c-format +msgid "binary + is not defined for \"IDate\" objects" +msgstr "binário + não está definida para objetos \"IDate\"" + +#: IDateTime.R:114 +#, c-format +msgid "can only subtract from \"IDate\" objects" +msgstr "pode apenas subtrair de objetos \"IDate\"" + +#: IDateTime.R:117 +#, c-format +msgid "Internal error: storage mode of IDate is somehow no longer integer" +msgstr "" +"Erro interno: o modo de armazenamento do IDate de alguma forma não é mais " +"inteiro" + +#: IDateTime.R:119 +#, c-format +msgid "unary - is not defined for \"IDate\" objects" +msgstr "unário - não está definido para objetos \"IDate\"" + +#: IDateTime.R:121 +#, c-format +msgid "" +"Internal error -- difftime objects may not be subtracted from IDate, but Ops " +"dispatch should have intervened to prevent this" +msgstr "" +"Erro interno -- objetos difftime não podem ser subtraídos de IDate, mas " +"despacho de Ops deveria ter intervindo para evitar isso" + +#: IDateTime.R:309 +#, c-format +msgid "Valid options for ms are 'truncate', 'nearest', and 'ceil'." +msgstr "Opções válidas para ms são 'truncate', 'nearest', e 'ceil'." + +#: as.data.table.R:86 +#, c-format +msgid "" +"as.data.table.array method should only be called for arrays with 3+ " +"dimensions; use the matrix method for 2-dimensional arrays" +msgstr "" +"O método as.data.table.array só deve ser chamado para arrays com mais de 3 " +"dimensões ou mais; use o método matrix para arrays de 2 dimensões" + +#: as.data.table.R:88 +#, c-format +msgid "" +"Argument 'value.name' must be scalar character, non-NA and at least one " +"character" +msgstr "" +"O argumento 'value.name' deve ser um caractere escalar, não-NA e ter pelo " +"menos um caractere" + +#: as.data.table.R:90 +#, c-format +msgid "Argument 'sorted' must be scalar logical and non-NA" +msgstr "O argumento 'sorted' deve ser lógico escalar e não-NA" + +#: as.data.table.R:92 +#, c-format +msgid "Argument 'na.rm' must be scalar logical and non-NA" +msgstr "O argumento 'na.rm' deve ser lógico escalar e não-NA" + +#: as.data.table.R:94 +#, c-format +msgid "Please provide either 'key' or 'sorted', but not both." +msgstr "Favor fornecer ou 'key' ou 'sorted', mas não ambos." + +#: as.data.table.R:108 +#, c-format +msgid "" +"Argument 'value.name' should not overlap with column names in result: %s" +msgstr "" +"O argumento 'value.name' não deve se sobrepor aos nomes das colunas no " +"resultado: %s" + +#: as.data.table.R:140 +#, c-format +msgid "" +"POSIXlt column type detected and converted to POSIXct. We do not recommend " +"use of POSIXlt at all because it uses 40 bytes to store one date." +msgstr "" +"Tipo de coluna POSIXlt detectado e convertido em POSIXct. Não recomendamos o " +"uso do POSIXlt porque ele usa 40 bytes para armazenar uma data." + +#: as.data.table.R:181 +#, c-format +msgid "Item %d has %d rows but longest item has %d; recycled with remainder." +msgstr "" +"O item %d possui %d linhas, mas o item mais longo possui %d; reciclado com o " +"restante." + +#: as.data.table.R:196 +#, c-format +msgid "A column may not be called .SD. That has special meaning." +msgstr "" +"Uma coluna não pode ser chamada de .SD. Esse nome tem um significado " +"especial." + +#: as.data.table.R:210 +#, c-format +msgid "class must be length 1" +msgstr "class deve ter comprimento 1" + +#: between.R:3 +#, c-format +msgid "between has been passed an argument x of type logical" +msgstr "between recebeu um argumento x do tipo lógico" + +#: between.R:13 between.R:15 +#, c-format +msgid "" +"'between' function the 'x' argument is a POSIX class while '%s' was not, " +"coercion to POSIX failed with: %s" +msgstr "" +"na função 'between', o argumento 'x' é uma classe POSIX enquanto '%s' não " +"era, então a coerção para POSIX falhou com: %s" + +#: between.R:27 +#, c-format +msgid "" +"'between' lower= and upper= are both POSIXct but have different tzone " +"attributes: %s. Please align their time zones." +msgstr "" +"lower= e upper= do 'between' são ambos POSIXct, mas possuem atributos tzone " +"diferentes: %s. Alinhe seus fusos horários." + +#: between.R:31 +#, c-format +msgid "" +"'between' arguments are all POSIXct but have mismatched tzone attributes: " +"%s. The UTC times will be compared." +msgstr "" +"os argumentos de 'between' são todos POSIXct, mas possuem atributos tzone " +"incompatíveis: %s. Os horários UTC serão comparados." + +#: between.R:36 +#, c-format +msgid "trying to use integer64 class when 'bit64' package is not installed" +msgstr "" +"tentando usar a classe integer64 quando o pacote 'bit64' não está instalado" + +#: between.R:48 +#, c-format +msgid "" +"Not yet implemented NAbounds=TRUE for this non-numeric and non-character type" +msgstr "" +"Ainda não implementado NAbounds=TRUE para este tipo não numérico e não " +"caractere" + +#: between.R:49 +#, c-format +msgid "Some lower>upper for this non-numeric and non-character type" +msgstr "Alguns lower>upper para este tipo não numérico e não caractere" + +#: between.R:63 +#, c-format +msgid "Perhaps you meant %s?" +msgstr "Talvez você quis dizer %s?" + +#: between.R:64 +#, c-format +msgid "" +"RHS has length() %d; expecting length 2. %sThe first element should be the " +"lower bound(s); the second element should be the upper bound(s)." +msgstr "" +"O lado direito (RHS) tem length() %d; esperando comprimento 2. %sO primeiro " +"elemento deve ser o(s) limite(s) inferior(es); o segundo elemento deve ser " +"o(s) limite(s) superior(es)." + +#: bmerge.R:48 bmerge.R:49 +#, c-format +msgid "%s is type %s which is not supported by data.table join" +msgstr "%s é do tipo %s, o qual não é suportado pela junção do data.table" + +#: bmerge.R:52 +#, c-format +msgid "" +"Attempting roll join on factor column when joining %s to %s. Only integer, " +"double or character columns may be roll joined." +msgstr "" +"Tentando uma junção por \"rolamento\" na coluna de fatores ao fazer a junção " +"entre %s e %s. Apenas colunas de inteiros, double ou caracteres podem ser " +"usadas na junção. " + +#: bmerge.R:71 +#, c-format +msgid "" +"Incompatible join types: %s (%s) and %s (%s). Factor columns must join to " +"factor or character columns." +msgstr "" +"Tipos de junção incompatíveis: %s (%s) e %s (%s). Colunas de fator devem " +"unir-se a colunas de caractere ou de fator." + +#: bmerge.R:90 +#, c-format +msgid "Incompatible join types: %s (%s) and %s (%s)" +msgstr "Tipos de junção incompatíveis: %s (%s) e %s (%s)" + +#: bmerge.R:98 +#, c-format +msgid "" +"Incompatible join types: %s is type integer64 but %s is type double and " +"contains fractions" +msgstr "" +"Tipos de junção incompatíveis: %s é do tipo integer64, mas %s é do tipo " +"'double' e contém frações" + +#: bmerge.R:153 +#, c-format +msgid "roll is not implemented for non-equi joins yet." +msgstr "'roll' ainda não está implementado para junções por desigualdade." + +#: bmerge.R:173 +#, c-format +msgid "Column name '_nqgrp_' is reserved for non-equi joins." +msgstr "" +"O nome de coluna '_nqgrp_' está reservado para junções por desigualdade." + +#: data.table.R:55 +#, c-format +msgid "key argument of data.table() must be character" +msgstr "o argumento key do data.table() deve ser caractere" + +#: data.table.R:57 data.table.R:800 fread.R:344 +#, c-format +msgid "" +"Usage of comma-separated literals in %s is deprecated, please split such " +"entries yourself before passing to data.table" +msgstr "" +"O uso de literais separados por vírgula em %s está obsoleto. Por favor, " +"parta tais entradas por conta própria antes de passar para data.table" + +#: data.table.R:123 +#, c-format +msgid "Object '%s' not found. Perhaps you intended %s" +msgstr "Objeto '%s' não encontrado. Talvez sua intenção fosse %s" + +#: data.table.R:125 +#, c-format +msgid "Object '%s' not found amongst %s" +msgstr "Objeto '%s' não encontrado entre %s" + +#: data.table.R:141 +#, c-format +msgid "" +"[ was called on a data.table in an environment that is not data.table-aware " +"(i.e. cedta()), but '%s' was used, implying the owner of this call really " +"intended for data.table methods to be called. See vignette('datatable-" +"importing') for details on properly importing data.table." +msgstr "" +"[ foi chamado em uma data.table em um ambiente que não está ciente de data." +"table (p.ex. cedta()), mas '%s' foi usado, implicando que o dono desta " +"chamada realmente pretendia que métodos data.table fossem chamados. Veja " +"vignette('datatable-importing') para detalhes sobre importar uma data.table " +"apropriadamente." + +#: data.table.R:152 +#, c-format +msgid "verbose must be logical or integer" +msgstr "verbose deve ser lógico ou inteiro" + +#: data.table.R:153 +#, c-format +msgid "verbose must be length 1 non-NA" +msgstr "verbose deve ser não NA e de comprimento 1" + +#: data.table.R:161 +#, c-format +msgid "Ignoring by/keyby because 'j' is not supplied" +msgstr "Ignorando by/keyby porque 'j' não foi fornecido" + +#: data.table.R:175 +#, c-format +msgid "When by and keyby are both provided, keyby must be TRUE or FALSE" +msgstr "Quando by e keyby são ambos fornecidos, keyby deve ser TRUE ou FALSE" + +#: data.table.R:187 +#, c-format +msgid "" +"When on= is provided but not i=, on= must be a named list or data.table|" +"frame, and a natural join (i.e. join on common names) is invoked. Ignoring " +"on= which is '%s'." +msgstr "" +"Quando on= é fornecido, mas não i=, on= deve ser uma lista nomeada ou data." +"table|frame, e uma junção natural (ou seja, junção em nomes comuns) é " +"invocada. Ignorando on= , que é '%s'." + +#: data.table.R:200 +#, c-format +msgid "" +"i and j are both missing so ignoring the other arguments. This warning will " +"be upgraded to error in future." +msgstr "" +"i e j estão faltando, ignorando os outros argumentos. Este aviso será " +"atualizado para se tornar um erro no futuro." + +#: data.table.R:204 +#, c-format +msgid "mult argument can only be 'first', 'last' or 'all'" +msgstr "o argumento mult só pode ser 'first', 'last' ou 'all'" + +#: data.table.R:206 +#, c-format +msgid "" +"roll must be a single TRUE, FALSE, positive/negative integer/double " +"including +Inf and -Inf or 'nearest'" +msgstr "" +"roll deve ser TRUE, FALSE, número inteiro/duplo positivo/negativo, incluindo " +"+Inf e -Inf ou 'nearest'" + +#: data.table.R:208 +#, c-format +msgid "roll is '%s' (type character). Only valid character value is 'nearest'." +msgstr "" +"roll é '%s' (tipo caractere). O único valor de caractere válido é 'nearest'." + +#: data.table.R:213 +#, c-format +msgid "rollends must be a logical vector" +msgstr "rollends deve ser um vetor lógico" + +#: data.table.R:214 +#, c-format +msgid "rollends must be length 1 or 2" +msgstr "rollends deve ter comprimento 1 ou 2" + +#: data.table.R:222 +#, c-format +msgid "" +"nomatch= must be either NA or NULL (or 0 for backwards compatibility which " +"is the same as NULL but please use NULL)" +msgstr "" +"nomatch= deve ser NA ou NULL (ou 0 para compatibilidade com versões " +"anteriores, que é igual a NULL, mas use NULL)" + +#: data.table.R:225 +#, c-format +msgid "which= must be a logical vector length 1. Either FALSE, TRUE or NA." +msgstr "which= deve ser um vetor lógico de comprimento 1. FALSE, TRUE ou NA." + +#: data.table.R:226 +#, c-format +msgid "" +"which==%s (meaning return row numbers) but j is also supplied. Either you " +"need row numbers or the result of j, but only one type of result can be " +"returned." +msgstr "" +"which==%s (significando retornar números de linha), mas j também é " +"fornecido. Ou você precisa de números de linha ou do resultado de j, mas " +"apenas um tipo de resultado pode ser retornado." + +#: data.table.R:227 +#, c-format +msgid "" +"which=NA with nomatch=0|NULL would always return an empty vector. Please " +"change or remove either which or nomatch." +msgstr "" +"which=NA com nomatch=0|NULL sempre retornaria um vetor vazio. Favor alterar " +"ou remover ou which, ou nomatch." + +#: data.table.R:228 +#, c-format +msgid "j must be provided when with=FALSE" +msgstr "j deve ser fornecido quando with=FALSE" + +#: data.table.R:268 +#, c-format +msgid "" +"The symbol .. is invalid. The .. prefix must be followed by at least one " +"character." +msgstr "" +"O símbolo .. é inválido. O prefixo .. deve ser seguido por pelo menos um " +"caractere." + +#: data.table.R:271 +#, c-format +msgid "" +"Variable '..%s' does exist in calling scope though, so please just removed " +"the .. prefix from that variable name in calling scope." +msgstr "" +"A variável '..%s' existe no escopo de chamada, portanto, então favor " +"simplesmente remover o prefixo .. desse nome de variável no escopo de " +"chamada." + +#: data.table.R:275 +#, c-format +msgid "" +"Variable '%s' is not found in calling scope. Looking in calling scope " +"because you used the .. prefix.%s" +msgstr "" +"A variável '%s' não foi encontrada no escopo de chamada. Procurando no " +"escopo de chamada porque você usou .. como prefixo.%s" + +#: data.table.R:277 +#, c-format +msgid "" +"Both '%1$s' and '..%1$s' exist in calling scope. Please remove the '..%1$s' " +"variable in calling scope for clarity." +msgstr "" +"Tanto '%1$s' quanto '..%1$s' existem no escopo de chamada. Remova a variável " +"'..%1$s' na chamada do escopo para maior clareza." + +#: data.table.R:283 +#, c-format +msgid "" +"Internal error: DT[, ..var] should be dealt with by the branch above now." +msgstr "Erro interno: agora o branch acima deveria ter lidado com DT[, ..var]." + +#: data.table.R:285 +#, c-format +msgid "" +"Variable '%s' is not found in calling scope. Looking in calling scope " +"because you set with=FALSE. Also, please use .. symbol prefix and remove " +"with=FALSE." +msgstr "" +"A variável '%s' não foi encontrada no escopo de chamada. Procurando no " +"escopo de chamada porque você definiu with=FALSE. Além disso, favor usr o " +"prefixo de símbolo .. e remover with=FALSE." + +#: data.table.R:293 +#, c-format +msgid "" +"You have wrapped := with {} which is ok but then := must be the only thing " +"inside {}. You have something else inside {} as well. Consider placing the " +"{} on the RHS of := instead; e.g. DT[,someCol:={tmpVar1<-...;tmpVar2<-...;" +"tmpVar1*tmpVar2}" +msgstr "" +"Você envolveu := com {}, o que está tudo bem, mas := deve ser a única coisa " +"dentro de {}. Você também tem algo mais dentro de {}. Considere colocar {} " +"ao lado direito de :=; por exemplo, DT[,algumaCol:={tmpVar1<-...;" +"tmpVar2<-...;tmpVar1*tmpVar2}]" + +#: data.table.R:313 +#, c-format +msgid "" +":= with keyby is only possible when i is not supplied since you can't setkey " +"on a subset of rows. Either change keyby to by or remove i" +msgstr "" +":= com keyby só é possível quando i não é fornecido, pois você não pode " +"definir a chave em um subconjunto de linhas. Ou altere keyby para by, ou " +"remova i" + +#: data.table.R:315 +#, c-format +msgid "nomatch isn't relevant together with :=, ignoring nomatch" +msgstr "nomatch não é relevante junto com :=, ignorando nomatch" + +#: data.table.R:371 +#, c-format +msgid "" +"not-join '!' prefix is present on i but nomatch is provided. Please remove " +"nomatch." +msgstr "" +"prefixo de não-junção '!' está presente em i, mas nomatch foi fornecido. Por " +"favor, remova nomatch." + +#: data.table.R:400 +#, c-format +msgid "" +"Operator := detected in i, the first argument inside DT[...], but is only " +"valid in the second argument, j. Most often, this happens when forgetting " +"the first comma (e.g. DT[newvar := 5] instead of DT[ , new_var := 5]). " +"Please double-check the syntax. Run traceback(), and debugger() to get a " +"line number." +msgstr "" +"Operador := detectado em i, o primeiro argumento dentro de DT[...], mas só é " +"válido no segundo argumento, j. Na maioria das vezes, isso acontece quando " +"se esquece a primeira vírgula (por exemplo, DT[nova_var := 5] em vez de " +"DT[ , nova_var := 5]). Verifique novamente a sintaxe. Execute traceback() e " +"debugger() para obter um número de linha." + +#: data.table.R:411 +#, c-format +msgid "'%s' is not found in calling scope and it is not a column name either" +msgstr "" +"'%s' não foi encontrado no escopo de chamada e também não é um nome de coluna" + +#: data.table.R:414 +#, c-format +msgid "" +"'%s' is not found in calling scope, but it is a column of type %s. If you " +"wish to select rows where that column contains TRUE, or perhaps that column " +"contains row numbers of itself to select, try DT[(col)], DT[DT$col], or " +"DT[col==TRUE} is particularly clear and is optimized" +msgstr "" +"'%s' não foi encontrado no escopo de chamada, mas é uma coluna do tipo %s. " +"Se você deseja selecionar linhas onde essa coluna contém TRUE, ou talvez " +"onde essa coluna contenha números de linha para selecionar, tente DT[(col)], " +"DT[DT$col] ou DT[col==TRUE}, o que é particularmente claro e otimizado" + +#: data.table.R:417 +#, c-format +msgid "" +"%s. When the first argument inside DT[...] is a single symbol (e.g. " +"DT[var]), data.table looks for var in calling scope." +msgstr "" +"%s. Quando o primeiro argumento dentro de DT[...] é um único símbolo (por " +"exemplo, DT[var]), data.table procura por var na chamada do escopo." + +#: data.table.R:429 +#, c-format +msgid "" +"i is invalid type (matrix). Perhaps in future a 2 column matrix could return " +"a list of elements of DT (in the spirit of A[B] in FAQ 2.14). Please report " +"to data.table issue tracker if you'd like this, or add your comments to FR " +"#657." +msgstr "" +"i é um tipo inválido (matrix). Talvez no futuro uma matriz de 2 colunas " +"possa retornar uma lista de elementos de DT (no espírito de A[B] no FAQ " +"2.14). Por favor, relate no rastreador de problemas do data.table se desejar " +"isso, ou adicione seus comentários ao FR #657." + +#: data.table.R:452 +#, c-format +msgid "" +"When i is a data.table (or character vector), the columns to join by must be " +"specified using 'on=' argument (see ?data.table), by keying x (i.e. sorted, " +"and, marked as sorted, see ?setkey), or by sharing column names between x " +"and i (i.e., a natural join). Keyed joins might have further speed benefits " +"on very large data due to x being sorted in RAM." +msgstr "" +"Quando i é uma data.table (ou vetor de caracteres), as colunas nas quais " +"fazer a junção devem ser especificadas usando o argumento 'on=' (consulte ?" +"data.table), por meio de chaveamento de x (ou seja, ordenado e marcado como " +"ordenado, consulte ?setkey) ou compartilhando de nomes de colunas entre x e " +"i (ou seja, uma junção natural). As junções chaveadas podem ter benefícios " +"adicionais de velocidade em dados muito grandes devido ao x estar ordenado " +"na RAM." + +#: data.table.R:460 +#, c-format +msgid "Attempting to do natural join but no common columns in provided tables" +msgstr "" +"Tentando fazer junção natural, mas não há colunas comuns nas tabelas " +"fornecidas" + +#: data.table.R:538 +#, c-format +msgid "Internal error. Cannot by=.EACHI when joining to an index, yet" +msgstr "" +"Erro interno. Ainda não é possível usar by=.EACHI ao fazer junção em um " +"índice" + +#: data.table.R:541 +#, c-format +msgid "Internal error. irows has length in by=.EACHI" +msgstr "Erro interno. irows tem comprimento em by=.EACHI" + +#: data.table.R:592 +#, c-format +msgid "logical error. i is not a data.table, but 'on' argument is provided." +msgstr "" +"erro lógico. i não é uma data.table, mas o argumento 'on' foi fornecido." + +#: data.table.R:596 +#, c-format +msgid "i has evaluated to type %s. Expecting logical, integer or double." +msgstr "i foi avaliado para o tipo %s. Esperava lógico, inteiro ou 'double'." + +#: data.table.R:600 +#, c-format +msgid "" +"internal error: notjoin and which=NA (non-matches), huh? please provide " +"reproducible example to issue tracker" +msgstr "" +"erro interno: notjoin e which=NA (não correspondências). Mas hein? Por " +"favor, forneça um exemplo reproduzível no rastreador de problemas" + +#: data.table.R:618 +#, c-format +msgid "" +"i evaluates to a logical vector length %d but there are %d rows. Recycling " +"of logical i is no longer allowed as it hides more bugs than is worth the " +"rare convenience. Explicitly use rep(...,length=.N) if you really need to " +"recycle." +msgstr "" +"i foi avaliado como um vetor lógico de comprimento %d, mas há %d linhas. A " +"reciclagem do i lógico não é mais permitida, pois mais esconde bugs do que " +"vale a rara conveniência. Use explicitamente rep(...,length=.N) se você " +"realmente precisar reciclar." + +#: data.table.R:621 +#, c-format +msgid "" +"Please use nomatch=NULL instead of nomatch=0; see news item 5 in v1.12.0 " +"(Jan 2019)" +msgstr "" +"Favor usar nomatch=NULL em vez de nomatch=0; veja o item 5 das novidades da " +"v1.12.0 (jan 2019)" + +#: data.table.R:634 +#, c-format +msgid "Internal error: notjoin but byjoin or !integer or nomatch==NA" +msgstr "Erro interno: notjoin, mas byjoin ou !integer ou nomatch==NA" + +#: data.table.R:694 +#, c-format +msgid "" +"with=FALSE together with := was deprecated in v1.9.4 released Oct 2014. " +"Please wrap the LHS of := with parentheses; e.g., DT[,(myVar):=sum(b),by=a] " +"to assign to column name(s) held in variable myVar. See ?':=' for other " +"examples. As warned in 2014, this is now a warning." +msgstr "" +"o uso de with=FALSE junto com := é obsoleto desde v1.9.4, lançada em outubro " +"de 2014. Coloque o lado esquerdo de := entre parênteses; por exemplo, DT[," +"(minhaVar):=sum(b),by=a] para atribuir para nomes de colunas mantidos na " +"variável minhaVar. Veja ?':=' para outros exemplos. Tal como antecipado em " +"2014, isto é agora um aviso." + +#: data.table.R:697 +#, c-format +msgid "" +"with=FALSE ignored, it isn't needed when using :=. See ?':=' for examples." +msgstr "" +"with=FALSE ignorado, não é necessário ao usar :=. Veja ?':=' para exemplos." + +#: data.table.R:721 +#, c-format +msgid "column(s) not removed because not found: %s" +msgstr "coluna(s) não removida(s) por não ter(em) sido encontrada(s): %s" + +#: data.table.R:735 +#, c-format +msgid "column(s) not found: %s" +msgstr "coluna(s) não encontrada(s): %s" + +#: data.table.R:741 +#, c-format +msgid "Item %d of j is %d which is outside the column number range [1,ncol=%d]" +msgstr "" +"O item %d de j é %d, o qual está fora do intervalo de números de colunas [1," +"ncol=%d]" + +#: data.table.R:744 +#, c-format +msgid "j mixes positives and negatives" +msgstr "j mistura positivos e negativos" + +#: data.table.R:752 +#, c-format +msgid "" +"When with=FALSE, j-argument should be of type logical/character/integer " +"indicating the columns to select." +msgstr "" +"Quando with=FALSE, o argumento j deve ser do tipo lógico/caractere/inteiro " +"indicando as colunas a serem selecionadas." + +#: data.table.R:766 +#, c-format +msgid "" +"'by' contains .I but only the following are currently supported: by=.I, by=." +"(.I), by=c(.I), by=list(.I)" +msgstr "" +"'by' contém .I, mas atualmente só há suporte aos seguintes: by=.I, by=.(.I), " +"by=c(.I), by=list(.I)" + +#: data.table.R:790 +#, c-format +msgid "by=c(...), key(...) or names(...) must evaluate to 'character'" +msgstr "by=c(...), key(...) ou names(...) devem ser avaliados para 'character'" + +#: data.table.R:806 +#, c-format +msgid "At least one entry of by is empty" +msgstr "Ao menos uma entrada de by está vazia" + +#: data.table.R:847 +#, c-format +msgid "Internal error: irows isn't integer" +msgstr "Erro interno: irows não é inteiro" + +#: data.table.R:881 +#, c-format +msgid "" +"'by' appears to evaluate to column names but isn't c() or key(). Use " +"by=list(...) if you can. Otherwise, by=eval%s should work. This is for " +"efficiency so data.table can detect which columns are needed." +msgstr "" +"'by' parece ser avaliado para nomes de colunas, mas não é c() ou key(). Use " +"by=list(...) se puder. Caso contrário, by=eval%s deveria funcionar. Isso é " +"para maior eficiência, para que data.table possa detectar quais colunas são " +"necessárias." + +#: data.table.R:892 +#, c-format +msgid "" +"'by' or 'keyby' must evaluate to a vector or a list of vectors (where 'list' " +"includes data.table and data.frame which are lists, too)" +msgstr "" +"'by' ou 'keyby' deve ser avaliado como um vetor ou uma lista de vetores " +"(onde 'list' inclui data.table e data.frame, que também são listas)" + +#: data.table.R:896 +#, c-format +msgid "" +"Column or expression %d of 'by' or 'keyby' is type '%s' which is not " +"currently supported. If you have a compelling use case, please add it to " +"https://github.com/Rdatatable/data.table/issues/1597. As a workaround, " +"consider converting the column to a supported type, e.g. by=sapply(list_col, " +"toString), whilst taking care to maintain distinctness in the process." +msgstr "" +"A coluna ou expressão %d de 'by' ou 'keyby' é do tipo '%s' e não é suportada " +"atualmente. Se você tiver um caso de uso atraente, adicione-o a https://" +"github.com/Rdatatable/data.table/issues/1597. Como solução alternativa, " +"considere converter a coluna em um tipo compatível, como " +"by=sapply(lista_colunas, toString), tomando cuidado para manter a distinção " +"no processo." + +#: data.table.R:900 +#, c-format +msgid "" +"The items in the 'by' or 'keyby' list are length(s) %s. Each must be length " +"%d; the same length as there are rows in x (after subsetting if i is " +"provided)." +msgstr "" +"Os itens na lista 'by' ou 'keyby' têm comprimento(s) %s. Cada um deve ter " +"comprimento %d; o mesmo comprimento que há linhas em x (após obter " +"subconjuntos se i for fornecido)." + +#: data.table.R:934 +#, c-format +msgid "Internal error: drop_dot passed %d items" +msgstr "Erro interno: drop_dot passou %d itens" + +#: data.table.R:953 +#, c-format +msgid "Item %d of the .() or list() passed to j is missing" +msgstr "O item %d de .() ou list() passado para j está ausente" + +#: data.table.R:959 +#, c-format +msgid "" +"j may not evaluate to the same number of columns for each group; if you're " +"sure this warning is in error, please put the branching logic outside of " +"[ for efficiency" +msgstr "" +"j pode não ser avaliado com o mesmo número de colunas para cada grupo; se " +"você tiver certeza de que este aviso está errado, coloque a lógica de " +"branching fora de [ para eficiência" + +#: data.table.R:961 +#, c-format +msgid "" +"Different branches of j expression produced different auto-named columns: " +"%s; using the most \"last\" names. If this was intentional (e.g., you know " +"only one branch will ever be used in a given query because the branch is " +"controlled by a function argument), please (1) pull this branch out of the " +"call; (2) explicitly provide missing defaults for each branch in all cases; " +"or (3) use the same name for each branch and re-name it in a follow-up call." +msgstr "" +"Diferentes branches da expressão j produziram diferentes colunas nomeadas " +"automaticamente: %s; usando os nomes definidos por último. Se isso foi " +"intencional (por exemplo, você sabe que apenas um branch será usado em uma " +"determinada consulta porque o branch é controlado por um argumento de " +"função), favor, (1) retirar esse branch da chamada; (2) fornecer " +"explicitamente os valores padrão faltantes para cada branch em todos os " +"casos; ou (3) use o mesmo nome para cada branch e renomeie-o em uma chamada " +"seguinte." + +#: data.table.R:1031 +#, c-format +msgid "" +"When .SDcols is a function, it is applied to each column; the output of this " +"function must be a non-missing boolean scalar signalling inclusion/exclusion " +"of the column. However, these conditions were not met for: %s" +msgstr "" +"Quando .SDcols é uma função, ela é aplicada a cada coluna; a saída desta " +"função deve ser um escalar booleano não NA sinalizando inclusão/exclusão da " +"coluna. No entanto, estas condições não foram cumpridas para: %s" + +#: data.table.R:1037 +#, c-format +msgid ".SDcols missing at the following indices: %s" +msgstr ".SDcols ausentes nos seguintes índices: %s" + +#: data.table.R:1039 +#, c-format +msgid ".SDcols is a logical vector length %d but there are %d columns" +msgstr ".SDcols tem um vetor lógico de comprimento %d, mas existem %d colunas" + +#: data.table.R:1045 +#, c-format +msgid ".SDcols is numeric but has both +ve and -ve indices" +msgstr ".SDcols é numérico, mas possui índices positivos e negativos" + +#: data.table.R:1047 +#, c-format +msgid ".SDcols is numeric but out of bounds [1, %d] at: %s" +msgstr ".SDcols é numérico, mas está fora dos limites [1, %d] em: %s" + +#: data.table.R:1051 +#, c-format +msgid ".SDcols should be column numbers or names" +msgstr ".SDcols deve consistir em números ou nomes de colunas" + +#: data.table.R:1053 +#, c-format +msgid "Some items of .SDcols are not column names: %s" +msgstr "Alguns itens de .SDcols não são nomes de colunas: %s" + +#: data.table.R:1095 +#, c-format +msgid "" +"This j doesn't use .SD but .SDcols has been supplied. Ignoring .SDcols. See ?" +"data.table." +msgstr "" +"Este j não usa .SD, mas .SDcols foi fornecido. Ignorando .SDcols. Consulte ?" +"data.table." + +#: data.table.R:1111 +#, c-format +msgid "" +".SD is locked. Using := in .SD's j is reserved for possible future use; a " +"tortuously flexible way to modify by group. Use := in j directly to modify " +"by group by reference." +msgstr "" +".SD é travado. O uso de := no j de .SD está reservado para possível uso " +"futuro; uma maneira tortuosamente flexível de modificar por grupo. Use := in " +"j diretamente para modificar por grupo por referência." + +#: data.table.R:1119 +#, c-format +msgid "In %s(col1=val1, col2=val2, ...) form, all arguments must be named." +msgstr "" +"Na forma %s(col1=val1, col2=val2, ...), todos os argumentos devem ser " +"nomeados." + +#: data.table.R:1136 +#, c-format +msgid "" +"In %s(col1=val1, col2=val2, ...) form, all arguments must be named, but the " +"last argument has no name. Did you forget a trailing comma?" +msgstr "" +"Na forma %s(col1=val1, col2=val2, ...), todos os argumentos devem ser " +"nomeados, mas o último argumento não tem nome. Você se esqueceu de uma " +"vírgula final?" + +#: data.table.R:1138 +#, c-format +msgid "" +"In %s(col1=val1, col2=val2, ...) form, all arguments must be named, but " +"these arguments lack names: %s." +msgstr "" +"Na forma %s(col1=val1, col2=val2, ...), todos os argumentos devem ser " +"nomeados, mas estes elementos estão sem nome: %s." + +#: data.table.R:1145 +#, c-format +msgid "" +"LHS of := must be a symbol, or an atomic vector (column names or positions)." +msgstr "" +"O lado esquerdo de := deve ser um símbolo ou um vetor atômico (nomes de " +"colunas ou posições)." + +#: data.table.R:1150 +#, c-format +msgid "" +"LHS of := appears to be column positions but are outside [1,ncol] range. New " +"columns can only be added by name." +msgstr "" +"Parece que o lado esquerdo de := são posições de coluna, mas estão fora do " +"intervalo [1,ncol]. Novas colunas só podem ser adicionadas por nome." + +#: data.table.R:1153 +#, c-format +msgid "" +"LHS of := isn't column names ('character') or positions ('integer' or " +"'numeric')" +msgstr "" +"O lado esquerdo de := não são nomes de colunas ('character') ou posições " +"('integer' ou 'numeric')" + +#: data.table.R:1184 +#, c-format +msgid "" +"Invalid .internal.selfref detected and fixed by taking a (shallow) copy of " +"the data.table so that := can add this new column by reference. At an " +"earlier point, this data.table has been copied by R (or was created manually " +"using structure() or similar). Avoid names<- and attr<- which in R currently " +"(and oddly) may copy the whole data.table. Use set* syntax instead to avoid " +"copying: ?set, ?setnames and ?setattr. If this message doesn't help, please " +"report your use case to the data.table issue tracker so the root cause can " +"be fixed or this message improved." +msgstr "" +".internal.selfref inválido detectado e corrigido fazendo uma cópia (rasa) do " +"data.table para que := possa adicionar esta nova coluna por referência. " +"Anteriormente, este data.table foi copiado por R (ou foi criado manualmente " +"usando structure() ou similar). Evite names<- e attr<- que, atualmente (e " +"estranhamente) no R podem copiar toda a data.table. Use a sintaxe set* para " +"evitar copiar: ?set, ?setnames e ?setattr. Se esta mensagem não ajudar, por " +"favor, relate isso no rastreador de problemas do data.table para que a causa " +"raiz possa ser corrigida ou esta mensagem melhorada." + +#: data.table.R:1215 +#, c-format +msgid "" +"Cannot assign to an under-allocated recursively indexed list -- L[[i]][,:=] " +"syntax is only valid when i is length 1, but its length is %d" +msgstr "" +"Não é possível atribuir a uma lista indexada recursivamente subalocada - a " +"sintaxe L[[i]][,:=] só é válida quando i tem comprimento 1, mas seu " +"comprimento é %d" + +#: data.table.R:1217 +#, c-format +msgid "Internal error -- item '%s' not found in names of list" +msgstr "Erro interno -- item '%s' não encontrado nos nomes da lista" + +#: data.table.R:1246 data.table.R:1259 +#, c-format +msgid "Internal error -- column(s) not found: %s" +msgstr "Erro interno – coluna(s) não encontrada(s): %s" + +#: data.table.R:1271 +#, c-format +msgid "" +"strptime() usage detected and wrapped with as.POSIXct(). This is to minimize " +"the chance of assigning POSIXlt columns, which use 40+ bytes to store one " +"date (versus 8 for POSIXct). Use as.POSIXct() (which will call strptime() as " +"needed internally) to avoid this warning." +msgstr "" +"Uso de strptime() detectado e agrupado com as.POSIXct(). Isso minimiza a " +"chance de atribuir colunas POSIXlt, que usam 40 ou mais bytes para armazenar " +"uma data (contra 8 para POSIXct). Use as.POSIXct() (que chamará strptime() " +"conforme necessário internamente) para evitar esse aviso." + +#: data.table.R:1289 +#, c-format +msgid "" +"Variable '%s' is not found in calling scope. Looking in calling scope " +"because this symbol was prefixed with .. in the j= parameter." +msgstr "" +"A variável '%s' não foi encontrada no escopo de chamada. Procurando no " +"escopo de chamada porque este símbolo foi prefixado com .. no parâmetro j=." + +#: data.table.R:1301 +#, c-format +msgid "Internal error: xcolAns does not pass checks: %d/%d/%d/%s" +msgstr "Erro interno: xcolAns não passa nas verificações: %d/%d/%d/%s" + +#: data.table.R:1311 +#, c-format +msgid "" +"Internal error: irows is NULL when making join result at R level. Should no " +"longer happen now we use CsubsetDT earlier." +msgstr "" +"Erro interno: irows é NULL ao fazer o resultado da junção no nível R. Isso " +"não deveria mais acontecer agora que usamos CsubsetDT mais cedo." + +#: data.table.R:1375 +#, c-format +msgid "" +"j (the 2nd argument inside [...]) is a single symbol but column name '%1$s' " +"is not found. If you intended to select columns using a variable in calling " +"scope, please try DT[, ..%1$s]. The .. prefix conveys one-level-up similar " +"to a file system path." +msgstr "" +"j (o 2º argumento dentro de [...]) é um símbolo único, mas o nome da coluna " +"'%1$s' não foi encontrado. Se você pretendia selecionar colunas usando uma " +"variável na chamada do escopo, tente DT[, ..%1$s]. O prefixo .. transmite um " +"nível superior semelhante a um caminho do sistema de arquivos." + +#: data.table.R:1430 +#, c-format +msgid "" +"Internal error: j has created a data.table result containing a NULL column" +msgstr "" +"Erro interno: j criou um resultado de data.table contendo uma coluna NULL" + +#: data.table.R:1440 +#, c-format +msgid "" +"The column '.N' can't be grouped because it conflicts with the special .N " +"variable. Try setnames(DT,'.N','N') first." +msgstr "" +"A coluna '.N' não pode ser agrupada porque conflita com a variável especial ." +"N. Tente setnames(DT,'.N','N') primeiro." + +#: data.table.R:1441 +#, c-format +msgid "" +"The column '.I' can't be grouped because it conflicts with the special .I " +"variable. Try setnames(DT,'.I','I') first." +msgstr "" +"A coluna '.I' não pode ser agrupada porque conflita com a variável especial ." +"I. Tente setnames(DT,'.I','I') primeiro." + +#: data.table.R:1469 +#, c-format +msgid "logical error. i is not data.table, but mult='all' and 'by'=.EACHI" +msgstr "erro lógico. i não é data.table, mas mult='all' e 'by'=.EACHI" + +#: data.table.R:1492 +#, c-format +msgid "Internal error: by= is missing" +msgstr "Erro interno: by= está ausente" + +#: data.table.R:1533 +#, c-format +msgid "Internal error: byindex not the index name" +msgstr "Erro interno: byindex não é o nome do índice" + +#: data.table.R:1536 +#, c-format +msgid "Internal error: byindex not found" +msgstr "Erro interno: byindex não encontrado" + +#: data.table.R:1790 +#, c-format +msgid "" +"Unable to optimize call to mean() and could be very slow. You must name 'na." +"rm' like that otherwise if you do mean(x,TRUE) the TRUE is taken to mean " +"'trim' which is the 2nd argument of mean. 'trim' is not yet optimized." +msgstr "" +"Não foi possível otimizar a chamada de mean() e pode ser muito lento. Você " +"deve nomear 'na.rm' como tal, caso contrário, se você usar mean(x,TRUE), o " +"TRUE é obtido para fazer uma média truncada, pois 'trim' é o 2º argumento de " +"mean. 'trim' ainda não está otimizado." + +#: data.table.R:1827 +#, c-format +msgid "Internal error: length(irows)!=length(o__)" +msgstr "Erro interno: length(irows)!=length(o__)" + +#: data.table.R:1936 +#, c-format +msgid "" +"The setkey() normally performed by keyby= has been skipped (as if by= was " +"used) because := is being used together with keyby= but the keyby= contains " +"some expressions. To avoid this warning, use by= instead, or provide " +"existing column names to keyby=." +msgstr "" +"O setkey() normalmente executado por keyby= foi ignorado (como se by= fosse " +"usado) porque := está sendo usado junto com keyby= mas keyby= contém algumas " +"expressões. Para evitar esse aviso, use by= ou forneça nomes de colunas " +"existentes para keyby=." + +#: data.table.R:1951 +#, c-format +msgid "Internal error: jvnames is length %d but ans is %d and bynames is %d" +msgstr "Erro interno: jvnames tem comprimento %d, mas ans é %d e bynames é %d" + +#: data.table.R:2021 +#, c-format +msgid "rownames and rownames.value cannot both be used at the same time" +msgstr "rownames e rownames.value não podem ser usados ao mesmo tempo" + +#: data.table.R:2026 +#, c-format +msgid "" +"length(rownames)==%d but nrow(DT)==%d. The rownames argument specifies a " +"single column name or number. Consider rownames.value= instead." +msgstr "" +"length(rownames)==%d, mas nrow(DT)==%d. O argumento rownames especifica um " +"único nome ou número de coluna. Considere usar rownames.value= em vez disso." + +#: data.table.R:2030 +#, c-format +msgid "" +"length(rownames)==0 but should be a single column name or number, or NULL" +msgstr "" +"length(rownames)==0, mas deve ser um nome ou número de única coluna, ou NULL" + +#: data.table.R:2034 +#, c-format +msgid "" +"rownames is TRUE but key has multiple columns %s; taking first column x[,1] " +"as rownames" +msgstr "" +"rownames é TRUE, mas a chave possui múltiplas colunas %s; usando primeira " +"coluna x[,1] como rownames" + +#: data.table.R:2044 +#, c-format +msgid "'%s' is not a column of x" +msgstr "'%s' não é uma coluna de x" + +#: data.table.R:2050 +#, c-format +msgid "" +"as.integer(rownames)==%d which is outside the column number range [1," +"ncol=%d]." +msgstr "" +"as.integer(rownames)==%d que está fora do intervalo de números de coluna [1," +"ncol=%d]." + +#: data.table.R:2055 +#, c-format +msgid "length(rownames.value)==%d but should be nrow(x)==%d" +msgstr "length(rownames.value)==%d, mas deveria ser nrow(x)==%d" + +#: data.table.R:2115 +#, c-format +msgid "" +"Internal error: as.matrix.data.table length(X)==%d but a dimension is zero" +msgstr "" +"Erro interno: as.matrix.data.table com length(X)==%d, mas uma dimensão é zero" + +#: data.table.R:2151 +#, c-format +msgid "" +"When i is a matrix in DT[i]<-value syntax, it doesn't make sense to provide j" +msgstr "" +"Quando i é uma matriz na sintaxe DT[i]<-valor, não faz sentido fornecer j" + +#: data.table.R:2161 +#, c-format +msgid "j must be an atomic vector, see ?is.atomic" +msgstr "j deve ser um vetor atômico, veja ?is.atomic" + +#: data.table.R:2162 +#, c-format +msgid "NA in j" +msgstr "NA em j" + +#: data.table.R:2168 +#, c-format +msgid "j must be vector of column name or positions" +msgstr "j deve ser um vetor de posições ou nome de coluna" + +#: data.table.R:2169 +#, c-format +msgid "" +"Attempt to assign to column position greater than ncol(x). Create the column " +"by name, instead. This logic intends to catch (most likely) user errors." +msgstr "" +"Tentativa de atribuir a uma posição de coluna maior que ncol(x). Em vez " +"disso, crie a coluna por nome. Esta lógica pretende capturar (prováveis) " +"erros do usuário." + +#: data.table.R:2236 +#, c-format +msgid "" +"data.table inherits from data.frame (from v1.5), but this data.table does " +"not. Has it been created manually (e.g. by using 'structure' rather than " +"'data.table') or saved to disk using a prior version of data.table?" +msgstr "" +"data.table herda de data.frame (desde v1.5), mas esta data.table não. Ela " +"foi criado=a manualmente (por exemplo, usando 'structure' em vez de 'data." +"table') ou salvo=a em disco usando uma versão anterior do data.table?" + +#: data.table.R:2245 +#, c-format +msgid "attempting to assign invalid object to dimnames of a data.table" +msgstr "tentando atribuir objeto inválido a dimnames de uma data.table" + +#: data.table.R:2246 +#, c-format +msgid "data.tables do not have rownames" +msgstr "data.tables não têm rownames" + +#: data.table.R:2247 data.table.R:2616 +#, c-format +msgid "Can't assign %d names to a %d-column data.table" +msgstr "Não é possível atribuir %d nomes a uma data.table de %d colunas" + +#: data.table.R:2311 +#, c-format +msgid "'subset' must evaluate to logical" +msgstr "'subset' deve ser avaliado para tipo lógico" + +#: data.table.R:2354 +#, c-format +msgid "Argument 'invert' must be logical TRUE/FALSE" +msgstr "Argumento 'invert' deve ser lógico TRUE/FALSE" + +#: data.table.R:2395 +#, c-format +msgid "x argument must be a data.table" +msgstr "o argumento x deve ser uma data.table" + +#: data.table.R:2400 +#, c-format +msgid "group length is 0 but data nrow > 0" +msgstr "o comprimento do grupo é 0, mas os dados têm nrow > 0" + +#: data.table.R:2402 +#, c-format +msgid "" +"passing 'f' argument together with 'by' is not allowed, use 'by' when split " +"by column in data.table and 'f' when split by external factor" +msgstr "" +"passar o argumento 'f' junto com 'by' não é permitido, use 'by' quando " +"dividido por uma coluna na data.table e 'f' quando dividido por fator externo" + +#: data.table.R:2410 +#, c-format +msgid "Either 'by' or 'f' argument must be supplied" +msgstr "O argumento 'by' ou 'f' deve ser fornecido" + +#: data.table.R:2412 +#, c-format +msgid "Column '.ll.tech.split' is reserved for split.data.table processing" +msgstr "" +"A coluna '.ll.tech.split' é reservada para processamento em split.data.table" + +#: data.table.R:2413 +#, c-format +msgid "Column '.nm.tech.split' is reserved for split.data.table processing" +msgstr "" +"A coluna '.nm.tech.split' é reservada para processamento em split.data.table" + +#: data.table.R:2414 +#, c-format +msgid "Argument 'by' must refer to column names in x" +msgstr "O argumento 'by' deve referir-se a nomes das colunas em x" + +#: data.table.R:2415 +#, c-format +msgid "" +"Argument 'by' must refer only to atomic-type columns, but the following " +"columns are non-atomic: %s" +msgstr "" +"O argumento 'by' deve referir-se apenas a colunas do tipo atômico, mas as " +"seguintes colunas não são atômicas: %s" + +#: data.table.R:2547 +#, c-format +msgid "" +"x is not a data.table|frame. Shallow copy is a copy of the vector of column " +"pointers (only), so is only meaningful for data.table|frame" +msgstr "" +"x não é um data.table|frame. A cópia rasa é uma cópia do vetor de ponteiros " +"de coluna (apenas), portanto, só é significativa para data.table|frame" + +#: data.table.R:2556 +#, c-format +msgid "setalloccol attempting to modify `*tmp*`" +msgstr "setalloccol tentando modificar `*tmp*`" + +#: data.table.R:2591 +#, c-format +msgid "" +"Input is a length=1 logical that points to the same address as R's global " +"value. Therefore the attribute has not been set by reference, rather on a " +"copy. You will need to assign the result back to a variable. See issue #1281." +msgstr "" +"A entrada é um tipo lógico de comprimento 1 que aponta para o mesmo endereço " +"que o valor global do R. Portanto, o atributo não foi definido por " +"referência, mas sim por uma cópia. Você precisará atribuir o resultado de " +"volta a uma variável. Consulte o issue #1281." + +#: data.table.R:2606 +#, c-format +msgid "x is not a data.table or data.frame" +msgstr "x não é um data.table ou data.frame" + +#: data.table.R:2608 +#, c-format +msgid "x has %d columns but its names are length %d" +msgstr "x tem %d colunas, mas seus nomes têm comprimento %d" + +#: data.table.R:2615 +#, c-format +msgid "Passed a vector of type '%s'. Needs to be type 'character'." +msgstr "Passou um vetor do tipo '%s'. Precisa ser do tipo 'character'." + +#: data.table.R:2628 +#, c-format +msgid "'new' is not a character vector or a function" +msgstr "'new' não é um vetor de caracteres ou uma função" + +#: data.table.R:2630 +#, c-format +msgid "NA in 'new' at positions %s" +msgstr "NA em 'new' nas posições %s" + +#: data.table.R:2631 +#, c-format +msgid "Some duplicates exist in 'old': %s" +msgstr "Existem algumas duplicatas em 'old': %s" + +#: data.table.R:2633 +#, c-format +msgid "'old' is type %s but should be integer, double or character" +msgstr "'old' é do tipo %s, mas deve ser inteiro, double ou caractere" + +#: data.table.R:2634 +#, c-format +msgid "'old' is length %d but 'new' is length %d" +msgstr "'old' tem comprimento %d, mas 'new' tem comprimento %d" + +#: data.table.R:2635 +#, c-format +msgid "NA (or out of bounds) in 'old' at positions %s" +msgstr "NA (ou fora dos limites) em 'old' nas posições %s" + +#: data.table.R:2638 +#, c-format +msgid "" +"Item %d of 'old' is '%s' which appears several times in column names. Just " +"the first will be changed. There are %d other items in 'old' that are also " +"duplicated in column names." +msgstr "" +"O item %d de 'old' é '%s', que aparece várias vezes nos nomes das colunas. " +"Apenas o primeiro será alterado. Existem %d outros itens em 'old' que também " +"estão duplicados nos nomes das colunas." + +#: data.table.R:2646 +#, c-format +msgid "" +"Items of 'old' not found in column names: %s. Consider skip_absent=TRUE." +msgstr "" +"Itens de 'old' não encontrados nos nomes das colunas: %s. Considere " +"skip_absent=TRUE." + +#: data.table.R:2656 +#, c-format +msgid "Internal error: length(i)!=length(new)" +msgstr "Erro interno: length(i)!=length(new)" + +#: data.table.R:2685 +#, c-format +msgid "" +"x has some duplicated column name(s): %s. Please remove or rename the " +"duplicate(s) and try again." +msgstr "" +"x tem alguns nomes de coluna duplicados: %s. Por favor, remova ou renomeie " +"as duplicatas e tente novamente." + +#: data.table.R:2687 +#, c-format +msgid "Provide either before= or after= but not both" +msgstr "Forneça before= ou after=, mas não ambos" + +#: data.table.R:2689 +#, c-format +msgid "before=/after= accept a single column name or number, not more than one" +msgstr "" +"before=/after= aceitam um único nome ou número de coluna, não mais do que um" + +#: data.table.R:2744 +#, c-format +msgid "Input is %s but should be a plain list of items to be stacked" +msgstr "" +"A entrada é %s, mas deve ser uma lista simples de itens a serem empilhados" + +#: data.table.R:2748 +#, c-format +msgid "" +"idcol must be a logical or character vector of length 1. If logical TRUE the " +"id column will named '.id'." +msgstr "" +"idcol deve ser um vetor de valores lógicos ou caracteres de comprimento 1. " +"Se for lógico TRUE, a coluna de identificação denominada '.id'." + +#: data.table.R:2753 +#, c-format +msgid "use.names=NA invalid" +msgstr "use.names=NA inválido" + +#: data.table.R:2755 +#, c-format +msgid "" +"use.names='check' cannot be used explicitly because the value 'check' is new " +"in v1.12.2 and subject to change. It is just meant to convey default " +"behavior. See ?rbindlist." +msgstr "" +"use.names='check' não pode ser usado explicitamente porque o valor 'check' é " +"novo na v1.12.2 e está sujeito a alterações. O objetivo é apenas transmitir " +"o comportamento padrão. Consulte ?rbindlist." + +#: data.table.R:2770 +#, c-format +msgid "" +"Check that is.data.table(DT) == TRUE. Otherwise, :=, `:=`(...) and let(...) " +"are defined for use in j, once only and in particular ways. See help(\":=\")." +msgstr "" +"Verifique se is.data.table(DT) == TRUE. De qualquer forma, :=, `:=`(...) e " +"let(...) são definidos para uso em j, apenas uma vez e de maneiras " +"específicas. Veja help(\":=\")." + +#: data.table.R:2775 +#, c-format +msgid "J() called outside of [.data.table. J() is only intended for use in i." +msgstr "J() chamado fora de [.data.table. J() destina-se para usar no i." + +#: data.table.R:2779 +#, c-format +msgid "" +".() called outside of [.data.table. .() is only intended as an alias for " +"list() inside DT[...]." +msgstr "" +".() chamado fora de [.data.table. .() destina-se como um alias para " +"list() dentr de DT[...]." + +#: data.table.R:2785 +#, c-format +msgid "" +"setDF only accepts data.table, data.frame or list of equal length as input" +msgstr "" +"setDF aceita apenas data.table, data.frame ou lista de igual comprimento " +"como entrada" + +#: data.table.R:2786 +#, c-format +msgid "rownames contains duplicates" +msgstr "rownames contém duplicatas" + +#: data.table.R:2793 data.table.R:2804 data.table.R:2827 +#, c-format +msgid "rownames incorrect length; expected %d names, got %d" +msgstr "rownames com comprimento incorreto; esperava %d nomes, obteve %d" + +#: data.table.R:2812 +#, c-format +msgid "All elements in argument 'x' to 'setDF' must be of same length" +msgstr "" +"Todos os elementos no argumento 'x' para 'setDF' devem ter o mesmo " +"comprimento" + +#: data.table.R:2841 +#, c-format +msgid "Cannot find symbol %s" +msgstr "Não foi possível encontrar o símbolo %s" + +#: data.table.R:2848 +#, c-format +msgid "" +"Cannot convert '%1$s' to data.table by reference because binding is locked. " +"It is very likely that '%1$s' resides within a package (or an environment) " +"that is locked to prevent modifying its variable bindings. Try copying the " +"object to your current environment, ex: var <- copy(var) and then using " +"setDT again." +msgstr "" +"Não é possível converter '%1$s' em data.table por referência porque o " +"vínculo está travado. É muito provável que '%1$s' resida em um pacote (ou " +"ambiente) que esteja travado para evitar a modificação de seus vínculos de " +"variáveis. Experimente copiar o objeto para o seu ambiente atual, ex: var <- " +"copy(var) e depois usar setDT novamente." + +#: data.table.R:2901 +#, c-format +msgid "" +"Argument 'x' to 'setDT' should be a 'list', 'data.frame' or 'data.table'" +msgstr "" +"O argumento 'x' para 'setDT' deve ser uma 'list', 'data.frame' ou 'data." +"table'" + +#: data.table.R:2916 +#, c-format +msgid "Item '%s' not found in names of input list" +msgstr "Item '%s' não encontrado nos nomes da lista recebida" + +#: data.table.R:2941 data.table.R:2966 +#, c-format +msgid "'prefix' must be NULL or a character vector of length 1." +msgstr "'prefix' deve ser NULL ou um vetor de caracteres de comprimento 1." + +#: data.table.R:2944 data.table.R:2969 +#, c-format +msgid "x is a single vector, non-NULL 'cols' doesn't make sense." +msgstr "x é um único vetor, 'cols' não NULL não faz sentido." + +#: data.table.R:2948 data.table.R:2973 +#, c-format +msgid "x is a list, 'cols' cannot be 0-length." +msgstr "x é uma lista, 'cols' não pode ter comprimento 0." + +#: data.table.R:3160 +#, c-format +msgid "" +"RHS of %s is length %d which is not 1 or nrow (%d). For robustness, no " +"recycling is allowed (other than of length 1 RHS). Consider %%in%% instead." +msgstr "" +"Lado direito (RHS) de %s tem comprimento %d que não é 1 ou nrow (%d). Para " +"maior robustez, nenhuma reciclagem é permitida (exceto em lado direito de " +"comprimento 1). Considere %%in%% em vez disso." + +#: data.table.R:3188 +#, c-format +msgid "" +"Internal error in .isFastSubsettable. Please report to data.table developers" +msgstr "" +"Erro interno em .isFastSubsettable. Por favor, relate aos desenvolvedores do " +"data.table" + +#: data.table.R:3275 +#, c-format +msgid "" +"'on' argument should be a named atomic vector of column names indicating " +"which columns in 'i' should be joined with which columns in 'x'." +msgstr "" +"O argumento 'on' deve ser um vetor atômico nomeado de nomes de colunas " +"indicando quais colunas em 'i' correspondem a quais colunas em 'x' para a " +"junção." + +#: data.table.R:3316 +#, c-format +msgid "" +"Found more than one operator in one 'on' statement: %s. Please specify a " +"single operator." +msgstr "" +"Encontrado mais de um operador em uma instrução 'on': %s. Especifique um " +"único operador." + +#: data.table.R:3339 +#, c-format +msgid "" +"'on' contains no column name: %s. Each 'on' clause must contain one or two " +"column names." +msgstr "" +"'on' não contém nome de coluna: %s. Cada cláusula 'on' deve conter um ou " +"dois nomes de coluna." + +#: data.table.R:3341 +#, c-format +msgid "" +"'on' contains more than 2 column names: %s. Each 'on' clause must contain " +"one or two column names." +msgstr "" +"'on' contém mais de 2 nomes de colunas: %s. Cada cláusula 'on' deve conter " +"um ou dois nomes de coluna." + +#: data.table.R:3346 +#, c-format +msgid "Invalid join operators %s. Only allowed operators are %s." +msgstr "" +"Operadores de junção inválidos: %s. Os únicos operadores permitidos são %s." + +#: devel.R:16 +#, c-format +msgid "There is no package %s in provided repository." +msgstr "Não há um pacote %s no repositório fornecido." + +#: duplicated.R:7 +#, c-format +msgid "'fromLast' must be TRUE or FALSE" +msgstr "'fromLast' deve ser TRUE ou FALSE" + +#: duplicated.R:105 +#, c-format +msgid "x must be an atomic vector or data.frames/data.tables" +msgstr "x deve ser um vetor atômico ou data.frames/data.tables" + +#: fcast.R:7 +#, c-format +msgid "Using '%s' as value column. Use 'value.var' to override" +msgstr "Usando '%s'como coluna do valor. Use 'value.var' para contornar" + +#: fcast.R:20 fmelt.R:16 +#, c-format +msgid "" +"The %1$s generic in data.table has been passed a %2$s, but data.table::%1$s " +"currently only has a method for data.tables. Please confirm your input is a " +"data.table, with setDT(%3$s) or as.data.table(%3$s). If you intend to use a " +"method from reshape2, try installing that package first, but do note that " +"reshape2 is superseded and is no longer actively developed." +msgstr "" +"Um %2$s foi passado para o genérico %1$s em data.table, mas atualmente data." +"table::%1$s só tem um método para data.tables. Favor garantir que a entrada " +"seja uma data.table, com setDT(%3$s) ou as.data.table(%3$s). Se você " +"pretende usar um método de reshape2, tente instalar aquele pacote primeiro, " +"mas note que reshape2 foi substituído e não está mais em desenvolvimento " +"ativo." + +#: fcast.R:21 +#, c-format +msgid "" +"The %1$s generic in data.table has been passed a %2$s and will attempt to " +"redirect to the relevant reshape2 method; please note that reshape2 is " +"superseded and is no longer actively developed, and this redirection is now " +"deprecated. Please do this redirection yourself like reshape2::%1$s(%3$s). " +"In the next version, this warning will become an error." +msgstr "" +"Um %2$s foi passado para o genérico %1$s em data.table e vai tentar " +"redirecionar para o método relevante no pacote reshape2; favor notar que " +"reshape2 foi substituído e não está mais em desenvolvimento ativo, e que " +"esse redirecionamento agora é obsoleto. Por favor, faça esse " +"redirecionamento por conta própria usando reshape2::%1$s(%3$s). Na próxima " +"versão, este aviso se tornará um erro." + +#: fcast.R:31 +#, c-format +msgid "" +"Invalid formula. Cast formula should be of the form LHS ~ RHS, for e.g., a + " +"b ~ c." +msgstr "" +"Fórmula inválida. A fórmula do cast deveria ter o formato LHS ~ RHS (lado " +"esquerdo ~ lado direito), p. ex. a + b ~ c." + +#: fcast.R:38 +#, c-format +msgid "data.table to cast must have unique column names" +msgstr "a data.table a ser \"moldada\" deve ter nomes de coluna únicos" + +#: fcast.R:83 +#, c-format +msgid "value.var values %s are not found in 'data'." +msgstr "os valores de value.var %s não se encontram em 'data'." + +#: fcast.R:99 +#, c-format +msgid "" +"When 'fun.aggregate' and 'value.var' are both lists, 'value.var' must be " +"either of length =1 or =length(fun.aggregate)." +msgstr "" +"Quando 'fun.aggregate' e 'value.var' são listas, o comprimento de 'value." +"var' deve ser ou =1 ou =length(fun.aggregate)." + +#: fcast.R:132 +#, c-format +msgid "'data' must be a data.table." +msgstr "'data' deve ser uma data.table." + +#: fcast.R:134 +#, c-format +msgid "'drop' must be logical TRUE/FALSE" +msgstr "'drop' deve ser lógico TRUE/FALSE" + +#: fcast.R:136 +#, c-format +msgid "Argument 'value.var.in.dots' should be logical TRUE/FALSE" +msgstr "Argumento 'value.var.in.dots' deveria ser lógico TRUE/FALSE" + +#: fcast.R:138 +#, c-format +msgid "" +"Arguments 'value.var.in.LHSdots', 'value.var.in.RHSdots' should be logical " +"TRUE/FALSE" +msgstr "" +"Os argumentos 'value.var.in.LHSdots', 'value.var.in.RHSdots' deveriam ser " +"lógicos TRUE/FALSE" + +#: fcast.R:155 +#, c-format +msgid "Column [%s] not found or of unknown type." +msgstr "Coluna [%s] não encontrada ou de tipo desconhecido." + +#: fcast.R:170 +#, c-format +msgid "Columns specified in formula can not be of type list" +msgstr "Colunas especificadas na formula não podem ser do tipo lista" + +#: fcast.R:185 +#, c-format +msgid "" +"'fun.aggregate' is NULL, but found duplicate row/column combinations, so " +"defaulting to length(). That is, the variables %s used in 'formula' do not " +"uniquely identify rows in the input 'data'. In such cases, 'fun.aggregate' " +"is used to derive a single representative value for each combination in the " +"output data.table, for example by summing or averaging (fun.aggregate=sum or " +"fun.aggregate=mean, respectively). Check the resulting table for values " +"larger than 1 to see which combinations were not unique. See ?dcast.data." +"table for more details." +msgstr "" +"'fun.aggregate' é NULL, mas foram encontradas combinações duplicadas de " +"linha/coluna, então usando length() por padrão. Isso é, as variáveis %s " +"usadas em 'formula' não identificam de forma única as linhas na entrada " +"'data'. Em tais casos, 'fun.aggregate' é usado para derivar um único valor " +"representativo para cada combinação na data.table de saída, por exemplo " +"somando ou tirando a média (fun.aggregate=sum ou fun.aggregate=mean, " +"respectivamente). Verifique a tabela resultante por valores maiores do que 1 " +"para ver quais combinações não foram únicas. Veja ?dcast.data.table para " +"mais detalhes." + +#: fcast.R:194 +#, c-format +msgid "" +"Aggregating function(s) should take vector inputs and return a single value " +"(length=1). However, function(s) returns length!=1. This value will have to " +"be used to fill any missing combinations, and therefore must be length=1. " +"Either override by setting the 'fill' argument explicitly or modify your " +"function to handle this case appropriately." +msgstr "" +"Funções de agregação deveriam receber vetores e retornar valores únicos " +"(comprimento=1). No entanto, o retorno da(s) função(ões) tem comprimento!=1. " +"Esse valor terá que ser usado para preencher quaisquer combinações " +"faltantes, e portanto deve ter comprimento=1. Ou contorne isso definindo o " +"argumento 'fill' explicitamente, ou modifique sua função para lidar com esse " +"caso apropriadamente." + +#: fcast.R:253 +#, c-format +msgid "Internal error -- empty rhsnames in dcast; please report" +msgstr "Erro interno -- rhsnames vazio em dcast; favor relatar" + +#: fmelt.R:17 +#, c-format +msgid "" +"The %1$s generic in data.table has been passed a %2$s and will attempt to " +"redirect to the relevant reshape2 method; please note that reshape2 is " +"superseded and is no longer actively developed, and this redirection is now " +"deprecated. To continue using melt methods from reshape2 while both " +"libraries are attached, e.g. melt.list, you can prepend the namespace, i.e. " +"reshape2::%1$s(%3$s). In the next version, this warning will become an error." +msgstr "" +"Um %2$s foi passado para o genérico %1$s em data.table, que vai tentar " +"redirecionar para o método relevante no pacote reshape2; favor notar que " +"reshape2 foi substituído e não está mais em desenvolvimento ativo, e que " +"esse redirecionamento agora é obsoleto. Para continuar usando métodos melt " +"de reshape2 enquanto ambos os pacotes estão anexados, p.ex. melt.list, você " +"pode prefixar com o namespace, p.ex. reshape2::%1$s(%3$s). Na próxima " +"versão, este aviso se tornará um erro." + +#: fmelt.R:28 +#, c-format +msgid "Input patterns must be of type character." +msgstr "Padrões de entrada devem ser do tipo caracter." + +#: fmelt.R:31 +#, c-format +msgid "Pattern(s) not found: [%s]" +msgstr "Padrão(ões) não encontrado(s): [%s]" + +#: fmelt.R:46 +#, c-format +msgid "" +"each ... argument to measure must be either a symbol without argument name, " +"or a function with argument name, problems: %s" +msgstr "" +"cada argumento ... para measure deve ser ou um símbolo sem nome de " +"argumento, ou uma função com nome de argumento, problemas: %s" + +#: fmelt.R:54 +#, c-format +msgid "" +"group names specified in ... conflict with measure argument names; please " +"fix by changing group names: %s" +msgstr "" +"nomes de grupo especificados em ... conflitam com nomes de argumento de " +"measures; favor consertar trocando os nomes de grupo: %s" + +#: fmelt.R:60 +#, c-format +msgid "" +"each ... argument to measure must be a function with at least one argument, " +"problem: %s" +msgstr "" +"cada ... argumento para measure deve ser uma função com ao menos um " +"argumento, problema: %s" + +#: fmelt.R:74 +#, c-format +msgid "" +"both sep and pattern arguments used; must use either sep or pattern (not " +"both)" +msgstr "" +"ambos os argumentos sep e pattern usados; deve usar ou sep, ou pattern (não " +"os dois)" + +#: fmelt.R:77 +#, c-format +msgid "multiple.keyword must be a character string with nchar>0" +msgstr "multiple.keyword deve ser uma string de caracteres com nchar>0" + +#: fmelt.R:80 +#, c-format +msgid "cols must be a character vector of column names" +msgstr "cols deve ser um vetor de caracteres de nomes de coluna" + +#: fmelt.R:88 +#, c-format +msgid "in measurev, %s must be named, problems: %s" +msgstr "em measurev, %s deve ser nomeado, problemas: %s" + +#: fmelt.R:94 +#, c-format +msgid "%s should be uniquely named, problems: %s" +msgstr "%s deveria receber nomes únicos, problemas: %s" + +#: fmelt.R:99 +#, c-format +msgid "number of %s =%d must be same as %s =%d" +msgstr "número de %s=%d deve ser o mesmo de %s =%d" + +#: fmelt.R:106 +#, c-format +msgid "pattern must be character string" +msgstr "pattern deve ser uma string de caracteres" + +#: fmelt.R:111 +#, c-format +msgid "" +"pattern did not match any cols, so nothing would be melted; fix by changing " +"pattern" +msgstr "" +"pattern não coincidiu com nenhuma coluna, então nada será \"derretido\"; " +"corrija mudando o padrão" + +#: fmelt.R:115 +#, c-format +msgid "" +"pattern must contain at least one capture group (parenthesized sub-pattern)" +msgstr "" +"pattern deve conter pelo menos um grupo de captura (subpadrão entre " +"parênteses)" + +#: fmelt.R:124 +#, c-format +msgid "sep must be character string" +msgstr "sep deve ser uma string de caracteres" + +#: fmelt.R:130 +#, c-format +msgid "" +"each column name results in only one item after splitting using sep, which " +"means that all columns would be melted; to fix please either specify melt on " +"all columns directly without using measure, or use a different sep/pattern " +"specification" +msgstr "" +"cada nome de coluna resulta em apenas um item após dividir usando sep, o que " +"significa que todas as colunas seriam \"derretidas\"; para consertar, favor " +"ou especificar o \"derretimento\" em todas as colunas diretamente sem usar " +"'measure', ou especifique um sep/pattern diferente" + +#: fmelt.R:140 +#, c-format +msgid "" +"number of unique column IDs =%d is less than number of melted columns =%d; " +"fix by changing pattern/sep" +msgstr "" +"o número de colunas de identificação únicas = %d é menor do que o número de " +"colunas \"derretidas\" = %d; conserte trocando pattern/sep" + +#: fmelt.R:150 +#, c-format +msgid "" +"in the measurev fun.list, each non-NULL element must be a function with at " +"least one argument, problem: %s" +msgstr "" +"na fun.list de measurev, cada elemento não-NULL deve ser uma função com ao " +"menos um argumento, problema: %s" + +#: fmelt.R:154 +#, c-format +msgid "" +"each conversion function must return an atomic vector with same length as " +"its first argument, problem: %s" +msgstr "" +"cada função de conversão deve retornar um vetor atômico com o mesmo " +"comprimento que seu primeiro argumento, problema: %s" + +#: fmelt.R:157 +#, c-format +msgid "%s conversion function returned vector of all NA" +msgstr "função de conversão %s retornou um vetor inteiro de NA" + +#: fmelt.R:163 +#, c-format +msgid "" +"number of unique groups after applying type conversion functions less than " +"number of groups, change type conversion" +msgstr "" +"o número de grupos únicos depois de aplicar funções de conversão de tipo é " +"menor do que o número de grupos, mude a conversão de tipo" + +#: fmelt.R:168 +#, c-format +msgid "" +"%s column class=%s after applying conversion function, but must be character" +msgstr "" +"coluna %s com classe=%s depois de aplicar função de conversão, mas tem que " +"ser caractere" + +#: fmelt.R:172 +#, c-format +msgid "%s is the only group; fix by creating at least one more group" +msgstr "%s é o único grupo; conserte criando ao menos mais um grupo" + +#: fmelt.R:195 +#, c-format +msgid "'data' must be a data.table" +msgstr "'data' deve ser uma data.table" + +#: fmelt.R:214 +#, c-format +msgid "" +"'value.name' provided in both 'measure.vars' and 'value.name argument'; " +"value provided in 'measure.vars' is given precedence." +msgstr "" +"'value.name' fornecido tanto em 'measure.vars' quanto no argumento 'value." +"name'; o valor fornecido em 'measure.vars' tem precedência" + +#: fmelt.R:217 +#, c-format +msgid "Please provide a name to each element of 'measure.vars'." +msgstr "Favor fornecer um nome para cada elemento de 'measure.vars'." + +#: foverlaps.R:3 +#, c-format +msgid "" +"y and x must both be data.tables. Use `setDT()` to convert list/data.frames " +"to data.tables by reference or as.data.table() to convert to data.tables by " +"copying." +msgstr "" +"y e x devem ambos serem data.tables. Use `setDT()` para converter listas e " +"data.frames para data.tables por referência ou as.data.table() para " +"converter para data.tables copiando." + +#: foverlaps.R:9 +#, c-format +msgid "maxgap must be a non-negative integer value of length 1" +msgstr "maxgap deve ser um valor inteiro não-negativo de comprimento 1" + +#: foverlaps.R:11 +#, c-format +msgid "minoverlap must be a positive integer value of length 1" +msgstr "minoverlap deve ser um valor inteiro positivo de comprimento 1" + +#: foverlaps.R:13 +#, c-format +msgid "which must be a logical vector of length 1. Either TRUE/FALSE" +msgstr "which deve ser um vetor lógico de comprimento 1. TRUE ou FALSE" + +#: foverlaps.R:15 +#, c-format +msgid "nomatch must either be NA or NULL" +msgstr "nomatch deve ser ou NA ou NULL" + +#: foverlaps.R:20 +#, c-format +msgid "maxgap and minoverlap arguments are not yet implemented." +msgstr "argumentos maxgap e minoverlap ainda não estão implementados." + +#: foverlaps.R:22 +#, c-format +msgid "" +"y must be keyed (i.e., sorted, and, marked as sorted). Call setkey(y, ...) " +"first, see ?setkey. Also check the examples in ?foverlaps." +msgstr "" +"y deve ser chaveada (ou seja, ordenada e marcada como ordenada). Chame " +"setkey(y, …) primeiro, veja ?setkey. Também confira os exemplos em ?" +"foverlaps." + +#: foverlaps.R:24 +#, c-format +msgid "" +"'by.x' and 'by.y' should contain at least two column names (or numbers) each " +"- corresponding to 'start' and 'end' points of intervals. Please see ?" +"foverlaps and examples for more info." +msgstr "" +"'by.x' e 'by.y' deveriam conter ao menos dois nomes de coluna (ou números) " +"cada - correspondendo aos pontos de início e fim dos intervalos. Favor ver ?" +"foverlaps e exemplos para mais informação. " + +#: foverlaps.R:27 +#, c-format +msgid "" +"Invalid numeric value for 'by.x'; it should be a vector with values 1 <= by." +"x <= length(x)" +msgstr "" +"Valor numérico inválido para 'by.x'; deveria ser um vetor com valores 1 <= " +"by.x <= length(x)" + +#: foverlaps.R:32 +#, c-format +msgid "" +"Invalid numeric value for 'by.y'; it should be a vector with values 1 <= by." +"y <= length(y)" +msgstr "" +"Valor numérico inválido para 'by.y'; deveria ser um vetor com valores 1 <= " +"by.y <= length(y)" + +#: foverlaps.R:36 +#, c-format +msgid "A non-empty vector of column names or numbers is required for by.x" +msgstr "" +"Um vetor não-vazio de nomes ou números de coluna é necessário para by.x" + +#: foverlaps.R:38 +#, c-format +msgid "A non-empty vector of column names or numbers is required for by.y" +msgstr "" +"Um vetor não-vazio de nomes ou números de coluna é necessário para by.y" + +#: foverlaps.R:40 +#, c-format +msgid "" +"The first %d columns of y's key must be identical to the columns specified " +"in by.y." +msgstr "" +"As primeiras %d colunas da chave de y devem ser idênticas às colunas " +"especificadas em by.y." + +#: foverlaps.R:42 +#, c-format +msgid "Elements listed in 'by.x' must be valid names in data.table x" +msgstr "Elementos listados em 'by.x' devem ser nomes válidos na data.table x" + +#: foverlaps.R:44 +#, c-format +msgid "" +"Duplicate columns are not allowed in overlap joins. This may change in the " +"future." +msgstr "" +"Colunas duplicadas não são permitidas em junções de sobreposição. Isso pode " +"mudar no futuro." + +#: foverlaps.R:46 +#, c-format +msgid "" +"length(by.x) != length(by.y). Columns specified in by.x should correspond to " +"columns specified in by.y and should be of same lengths." +msgstr "" +"length(by.x) != length(by.y). As colunas especificadas em by.x deveriam " +"corresponder às colunas especificadas em by.y, e os argumentos deveriam ser " +"do mesmo comprimento." + +#: foverlaps.R:48 foverlaps.R:50 merge.R:26 merge.R:27 +#, c-format +msgid "" +"%s has some duplicated column name(s): %s. Please remove or rename the " +"duplicate(s) and try again." +msgstr "" +"%s tem alguns nomes de coluna duplicados: %s. Por favor, remova ou renomeie " +"as duplicatas e tente novamente." + +#: foverlaps.R:56 +#, c-format +msgid "" +"The last two columns in by.x should correspond to the 'start' and 'end' " +"intervals in data.table x and must be integer/numeric type." +msgstr "" +"As últimas duas colunas em by.x deveriam corresponder às colunas de início e " +"de fim dos intervalos na data.table x e devem ser do tipo inteiro/numérico." + +#: foverlaps.R:60 foverlaps.R:62 foverlaps.R:69 foverlaps.R:71 +#, c-format +msgid "" +"NA values in data.table %s '%s' column: '%s'. All rows with NA values in the " +"range columns must be removed for foverlaps() to work." +msgstr "" +"Valores NA na coluna %s '%s' da data.table: '%s'. Todas as linhas com " +"valores NA nas colunas de intervalo devem ser removidas para o foverlaps() " +"funcionar." + +#: foverlaps.R:63 +#, c-format +msgid "" +"All entries in column '%s' should be <= corresponding entries in column '%s' " +"in data.table x." +msgstr "" +"Todas as entradas na coluna '%s' deveriam ser <= as entradas correspondentes " +"na coluna '%s' na data.table x." + +#: foverlaps.R:66 +#, c-format +msgid "" +"The last two columns in by.y should correspond to the 'start' and 'end' " +"intervals in data.table y and must be integer/numeric type." +msgstr "" +"As últimas duas colunas em by.y deveriam corresponder às colunas de início e " +"de fim dos intervalos na data.table y e devem ser do tipo inteiro/numérico." + +#: foverlaps.R:72 +#, c-format +msgid "" +"All entries in column '%s' should be <= corresponding entries in column '%s' " +"in data.table y." +msgstr "" +"Todas as entradas na coluna '%s' deveriam ser <= as entradas correspondentes " +"na coluna '%s' na data.table y." + +#: foverlaps.R:77 +#, c-format +msgid "" +"Some interval cols are of type POSIXct while others are not. Please ensure " +"all interval cols are (or are not) of POSIXct type" +msgstr "" +"Algumas colunas de intervalo são do tipo POSIXct, enquanto outras não são. " +"Favor garantir que todas as colunas de intervalo sejam (ou todas não sejam) " +"to tipo POSIXct" + +#: foverlaps.R:83 +#, c-format +msgid "" +"POSIXct interval cols have mixed timezones. Overlaps are performed on the " +"internal numerical representation of POSIXct objects (always in UTC epoch " +"time), therefore printed values may give the impression that values don't " +"overlap but their internal representations do Please ensure that POSIXct " +"type interval cols have identical 'tzone' attributes to avoid confusion." +msgstr "" +"Colunas de intervalo POSIXct têm fusos horários diferentes. As sobreposições " +"são realizadas na representação numérica dos objetos POSIXct (sempre em UTC, " +"era UNIX), de forma que os valores exibidos podem dar a impressão de que os " +"valores não se sobrepõem mas suas representações internas se sobrepõem. " +"Favor garantir que as colunas de intervalo do tipo POSIXct tenham atributos " +"'tzone' idênticos para evitar confusão." + +#: foverlaps.R:164 foverlaps.R:166 foverlaps.R:170 +#, c-format +msgid "Not yet implemented" +msgstr "Ainda não implementado" + +#: foverlaps.R:169 +#, c-format +msgid "maxgap > minoverlap. maxgap will have no effect here." +msgstr "maxgap > minoverlap. maxgap não terá efeito aqui." + +#: frank.R:3 +#, c-format +msgid "length(na.last) = 0" +msgstr "length(na.last) = 0" + +#: frank.R:5 +#, c-format +msgid "length(na.last) > 1, only the first element will be used" +msgstr "length(na.last) > 1, apenas o primeiro item será usado" + +#: frank.R:17 +#, c-format +msgid "x is a single vector, non-NULL 'cols' doesn't make sense" +msgstr "x é um vetor simples, 'cols' não-NULL não faz sentido" + +#: frank.R:23 +#, c-format +msgid "x is a list, 'cols' can not be 0-length" +msgstr "x é uma lista, 'cols' não pode ser de comprimento 0" + +#: frank.R:31 +#, c-format +msgid "" +"Input column '..na_prefix..' conflicts with data.table internal usage; " +"please rename" +msgstr "" +"Coluna de entrada '..na_prefix..' conflita com utilização interna por data." +"table; favor renomear" + +#: frank.R:46 +#, c-format +msgid "" +"Input column '..stats_runif..' conflicts with data.table internal usage; " +"please rename" +msgstr "" +"Coluna de entrada '..stats_runif..' conflita com utilização interna por data." +"table; favor renomear" + +#: fread.R:10 +#, c-format +msgid "Used more than one of the arguments input=, file=, text= and cmd=." +msgstr "Usados mais de um dos argumentos input=, file=, text= e cmd=." + +#: fread.R:23 +#, c-format +msgid "Argument 'encoding' must be 'unknown', 'UTF-8' or 'Latin-1'." +msgstr "Argumento 'encoding' deve ser 'unknown', 'UTF-8' ou 'Latin-1'." + +#: fread.R:42 +#, c-format +msgid "'text=' is type %s but must be character." +msgstr "'text=' é do tipo %s, mas deve ser caractere." + +#: fread.R:55 +#, c-format +msgid "" +"input= must be a single character string containing a file name, a system " +"command containing at least one space, a URL starting 'http[s]://', " +"'ftp[s]://' or 'file://', or, the input data itself containing at least one " +"\\n or \\r" +msgstr "" +"input= deve ser uma única sequência de caracteres contendo um nome de " +"arquivo, um comando do sistema contendo pelo menos um espaço, uma URL " +"começando com 'http[s]://', ​​'ftp[s]://' ou 'file://', ou os próprios dados " +"de entrada contendo pelo menos um entre \\n ou \\r" + +#: fread.R:60 +#, c-format +msgid "" +"input= contains no \\n or \\r, but starts with a space. Please remove the " +"leading space, or use text=, file= or cmd=" +msgstr "" +"input= não contém \\n ou \\r, mas começa com um espaço. Por favor, remova o " +"espaço inicial ou use text=, file= ou cmd=" + +#: fread.R:64 +#, c-format +msgid "" +"Taking input= as a system command because it contains a space ('%s'). If " +"it's a filename please remove the space, or use file= explicitly. A variable " +"is being passed to input= and when this is taken as a system command there " +"is a security concern if you are creating an app, the app could have a " +"malicious user, and the app is not running in a secure environment; e.g. the " +"app is running as root. Please read item 5 in the NEWS file for v1.11.6 for " +"more information and for the option to suppress this message." +msgstr "" +"Considerando input= como um comando do sistema porque contém um espaço " +"('%s'). Se for um nome de arquivo, remova o espaço ou use file= " +"explicitamente. Uma variável está sendo passada para input= e quando isso é " +"considerado um comando do sistema, há uma preocupação de segurança se você " +"estiver criando um aplicativo, o aplicativo pode ter um usuário mal-" +"intencionado e o aplicativo não está sendo executado em um ambiente seguro; " +"por exemplo. o aplicativo está sendo executado como root. Leia o item 5 no " +"arquivo NEWS da versão 1.11.6 para obter mais informações e para a opção de " +"suprimir esta mensagem." + +#: fread.R:77 +#, c-format +msgid "" +"file= must be a single character string containing a filename, or URL " +"starting 'http[s]://', 'ftp[s]://' or 'file://'" +msgstr "" +"file= deve ser uma única sequência de caracteres contendo um nome de arquivo " +"ou URL começando com 'http[s]://', ​​'ftp[s]://' ou 'file://'" + +#: fread.R:82 +#, c-format +msgid "" +"URL requires download.file functionalities from R >=3.2.2. You can still " +"manually download the file and fread the downloaded file." +msgstr "" +"URL requer funcionalidades de download.file de R >=3.2.2. Você ainda pode " +"baixar manualmente o arquivo e ler o arquivo baixado." + +#: fread.R:93 +#, c-format +msgid "File '%s' does not exist or is non-readable. getwd()=='%s'" +msgstr "O arquivo '%s' não existe ou não é legível. getwd()=='%s'" + +#: fread.R:94 +#, c-format +msgid "File '%s' is a directory. Not yet implemented." +msgstr "O arquivo '%s' é um diretório. Ainda não implementado." + +#: fread.R:96 +#, c-format +msgid "File '%s' has size 0. Returning a NULL %s." +msgstr "O arquivo '%s' tem tamanho 0. Retornando NULL %s." + +#: fread.R:109 +#, c-format +msgid "" +"Compressed files containing more than 1 file are currently not supported." +msgstr "" +"Arquivos compactados contendo mais de 1 arquivo não são suportados " +"atualmente." + +#: fread.R:121 +#, c-format +msgid "" +"To read gz and bz2 files directly, fread() requires 'R.utils' package which " +"cannot be found. Please install 'R.utils' using 'install.packages('R." +"utils')'." +msgstr "" +"Para ler arquivos gz e bz2 diretamente, fread() requer o pacote 'R.utils' " +"que não pôde ser encontrado. Instale 'R.utils' usando 'install.packages('R." +"utils')'." + +#: fread.R:131 +#, c-format +msgid "" +"'autostart' is now deprecated and ignored. Consider skip='string' or skip=n" +msgstr "" +"'autostart' agora está descontinuado e é ignorado. Considere skip='string' " +"ou skip=n" + +#: fread.R:133 +#, c-format +msgid "" +"colClasses is type 'logical' which is ok if all NA but it has some TRUE or " +"FALSE values in it which is not allowed. Please consider the drop= or " +"select= argument instead. See ?fread." +msgstr "" +"colClasses é do tipo 'logical', que está tudo bem se for todo NA, mas " +"contiver alguns valores TRUE ou FALSE que não são permitidos. Por favor, " +"considere o argumento drop= ou select=. Veja ?fread." + +#: fread.R:137 +#, c-format +msgid "colClasses is not type list or character vector" +msgstr "colClasses não é lista de tipos ou vetor de caracteres" + +#: fread.R:142 +#, c-format +msgid "" +"colClasses=\"NULL\" (quoted) is interpreted as colClasses=NULL (the default) " +"as opposed to dropping every column." +msgstr "" +"colClasses=\"NULL\" (entre aspas) é interpretado como colClasses=NULL (o " +"padrão) em vez de descartar todas as colunas." + +#: fread.R:154 +#, c-format +msgid "na.strings[%d]==\"%s\" consists only of whitespace, ignoring" +msgstr "na.strings[%d]==\"%s\" consiste apenas em espaços em branco, ignorando" + +#: fread.R:157 +#, c-format +msgid "" +"%s. Since strip.white=TRUE (default), use na.strings=\"\" to specify that " +"any number of spaces in a string column should be read as ." +msgstr "" +"%s. Como strip.white=TRUE (padrão), use na.strings=\"\" para especificar que " +"qualquer número de espaços em uma coluna de string deve ser lido como ." + +#: fread.R:159 +#, c-format +msgid "" +"%s. strip.white==TRUE (default) and \"\" is present in na.strings, so any " +"number of spaces in string columns will already be read as ." +msgstr "" +"%s. strip.white==TRUE (padrão) e \"\" está presente em na.strings, portanto " +"qualquer número de espaços nas colunas de string já será lido como ." + +#: fread.R:163 +#, c-format +msgid "" +"%s. But strip.white=FALSE. Use strip.white=TRUE (default) together with na." +"strings=\"\" to turn any number of spaces in string columns into " +msgstr "" +"%s. Mas strip.white=FALSE. Use strip.white=TRUE (padrão) junto com na." +"strings=\"\" para transformar qualquer número de espaços em colunas de " +"strings em " + +#: fread.R:169 +#, c-format +msgid "" +"'data.table' relies on the package 'yaml' to parse the file header; please " +"add this to your library with install.packages('yaml') and try again." +msgstr "" +"'data.table' depende do pacote 'yaml' para analisar o cabeçalho do arquivo; " +"adicione isso à sua biblioteca com install.packages('yaml') e tente " +"novamente." + +#: fread.R:173 +#, c-format +msgid "" +"Combining a search string as 'skip' and reading a YAML header may not work " +"as expected -- currently, reading will proceed to search for 'skip' from the " +"beginning of the file, NOT from the end of the metadata; please file an " +"issue on GitHub if you'd like to see more intuitive behavior supported." +msgstr "" +"Combinar uma string de pesquisa como 'skip' e ler um cabeçalho YAML pode não " +"funcionar como esperado -- atualmente, a leitura continuará a procurar por " +"'skip' desde o início do arquivo, NÃO a partir do final dos metadados; por " +"favor, registre um issue no GitHub se desejar ver suporte para um " +"comportamento mais intuitivo." + +#: fread.R:183 +#, c-format +msgid "" +"Encountered <%s%s> at the first unskipped line (%d), which does not " +"constitute the start to a valid YAML header (expecting something matching " +"regex \"%s\"); please check your input and try again." +msgstr "" +"Encontrado <%s%s> na primeira linha não ignorada (%d), que não constitui o " +"início de um cabeçalho YAML válido (esperando algo correspondente à regex " +"\"%s\"); verifique sua entrada e tente novamente." + +#: fread.R:195 +#, c-format +msgid "" +"Reached the end of the file before finding a completion to the YAML header. " +"A valid YAML header is bookended by lines matching the regex \"%s\". Please " +"double check the input file is a valid csvy." +msgstr "" +"Chegou ao final do arquivo antes de encontrar uma conclusão no cabeçalho " +"YAML. Um cabeçalho YAML válido é delimitado por linhas que correspondem à " +"regex \"%s\". Verifique novamente se o arquivo de entrada é um csvy válido." + +#: fread.R:209 +#, c-format +msgid "User-supplied 'header' will override that found in metadata." +msgstr "" +"O 'header' fornecido pelo usuário substituirá o encontrado nos metadados." + +#: fread.R:227 +#, c-format +msgid "" +"User-supplied column names in 'col.names' will override those found in YAML " +"metadata." +msgstr "" +"Os nomes de colunas fornecidos pelo usuário em 'col.names' substituirão " +"aqueles encontrados nos metadados YAML." + +#: fread.R:236 +#, c-format +msgid "" +"colClasses dictated by user input and those read from YAML header are in " +"conflict (specifically, for column(s) [%s]); the proceeding assumes the user " +"input was an intentional override and will ignore the type(s) implied by the " +"YAML header; please exclude the column(s) from colClasses if this was " +"unintentional." +msgstr "" +"colClasses ditadas pela entrada do usuário e aquelas lidas do cabeçalho YAML " +"estão em conflito (especificamente, para coluna(s) [%s]); o processo " +"pressupõe que a entrada do(a) usuário(a) foi uma substituição intencional e " +"ignorará o(s) tipo(s) implícito(s) no cabeçalho YAML; exclua a(s) coluna(s) " +"de colClasses se isso não for intencional." + +#: fread.R:257 +#, c-format +msgid "User-supplied 'sep' will override that found in metadata." +msgstr "O 'sep' fornecido pelo usuário substituirá o encontrado nos metadados." + +#: fread.R:262 +#, c-format +msgid "User-supplied 'quote' will override that found in metadata." +msgstr "" +"O 'quote' fornecido pelo(a) usuário(a) substituirá a encontrada nos " +"metadados." + +#: fread.R:267 +#, c-format +msgid "User-supplied 'dec' will override that found in metadata." +msgstr "" +"O 'dec' fornecido pelo(a) usuário(a) substituirá o encontrado nos metadados." + +#: fread.R:271 +#, c-format +msgid "User-supplied 'na.strings' will override that found in metadata." +msgstr "" +"O 'na.strings' fornecido pelo(a) usuário(a) substituirá a encontrada nos " +"metadados." + +#: fread.R:319 +#, c-format +msgid "" +"Column '%s' was requested to be '%s' but fread encountered the following " +"%s:\n" +"\t%s\n" +"so the column has been left as type '%s'" +msgstr "" +"Foi solicitado que a coluna '%s' seja '%s', mas fread encontrou o seguinte " +"%s:\n" +"\t%s\n" +"então a coluna foi deixada como tipo '%s'" + +#: fread.R:342 +#, c-format +msgid "" +"key argument of data.table() must be a character vector naming columns (NB: " +"col.names are applied before this)" +msgstr "" +"O argumento key de data.table() deve ser um vetor de caracteres que nomeia " +"colunas (Nota: col.names são aplicados antes disso)" + +#: fread.R:351 +#, c-format +msgid "" +"index argument of data.table() must be a character vector naming columns " +"(NB: col.names are applied before this)" +msgstr "" +"O argumento index do data.table() deve ser um vetor de caracteres que nomeia " +"colunas (Nota: col.names são aplicados antes disso)" + +#: fwrite.R:19 +#, c-format +msgid "Argument 'encoding' must be '', 'UTF-8' or 'native'." +msgstr "Argumento 'encoding' deve ser '', 'UTF-8' ou 'native'." + +#: fwrite.R:24 +#, c-format +msgid "dateTimeAs must be a single string" +msgstr "dateTimeAs deve ser uma única string" + +#: fwrite.R:26 +#, c-format +msgid "dateTimeAs must be 'ISO','squash','epoch' or 'write.csv'" +msgstr "dateTimeAs deve ser 'ISO','squash','epoch' ou 'write.csv'" + +#: fwrite.R:28 +#, c-format +msgid "logicalAsInt has been renamed logical01. Use logical01 only, not both." +msgstr "" +"logicalAsInt foi renomeado para logical01. Use apenas logical01, não ambos." + +#: fwrite.R:30 +#, c-format +msgid "" +"logicalAsInt has been renamed logical01 for consistency with fread. It works " +"fine for now but please change to logical01 at your convenience so we can " +"remove logicalAsInt in future." +msgstr "" +"logicalAsInt foi renomeado para logical01 para consistência com fread. " +"Funciona bem por enquanto, mas, por favor, mude para logical01 quando " +"possível para que possamos remover logicalAsInt no futuro." + +#: fwrite.R:40 +#, c-format +msgid "x being coerced from class: matrix to data.table" +msgstr "fazendo coerção de x da classe matrix para data.table" + +#: fwrite.R:85 +#, c-format +msgid "" +"If you intended to overwrite the file at %s with an empty one, please use " +"file.remove first." +msgstr "" +"Se você pretendia sobrescrever o arquivo em %s com um vazio, por favor, use " +"file.remove primeiro." + +#: fwrite.R:86 +#, c-format +msgid "Input has no columns; doing nothing.%s" +msgstr "Entrada não tem colunas; não há nada a fazer.%s" + +#: fwrite.R:89 +#, c-format +msgid "Input has no columns; creating an empty file at '%s' and exiting." +msgstr "Entrada não tem colunas; criando um arquivo vazio em '%s' e saindo." + +#: fwrite.R:96 +#, c-format +msgid "" +"'data.table' relies on the package 'yaml' to write the file header; please " +"add this to your library with install.packages('yaml') and try again." +msgstr "" +"'data.table' depende do pacote 'yaml' para escrever o cabeçalho do arquivo; " +"por favor, adicione isso à sua biblioteca com install.packages('yaml') e " +"tente novamente." + +#: groupingsets.R:7 groupingsets.R:25 groupingsets.R:47 +#, c-format +msgid "Argument 'x' must be a data.table object" +msgstr "Argumento 'x' deve ser um objeto data.table" + +#: groupingsets.R:9 groupingsets.R:27 groupingsets.R:53 +#, c-format +msgid "" +"Argument 'by' must be a character vector of column names used in grouping." +msgstr "" +"Argumento 'by' deve ser um vetor de caracteres de nomes de colunas usados em " +"agrupamento." + +#: groupingsets.R:11 groupingsets.R:29 groupingsets.R:59 +#, c-format +msgid "Argument 'id' must be a logical scalar." +msgstr "Argumento 'id' deve ser um escalar lógico." + +#: groupingsets.R:31 +#, c-format +msgid "Argument 'j' is required" +msgstr "Argumento 'j' é obrigatório" + +#: groupingsets.R:49 +#, c-format +msgid "" +"Argument 'x' is a 0-column data.table; no measure to apply grouping over." +msgstr "" +"Argumento 'x' é um data.table com 0 colunas; nenhuma medida para aplicar " +"sobre o agrupamento." + +#: groupingsets.R:51 +#, c-format +msgid "Input data.table must not contain duplicate column names." +msgstr "A data.table de entrada não deve conter nomes de colunas duplicados." + +#: groupingsets.R:55 +#, c-format +msgid "Argument 'by' must have unique column names for grouping." +msgstr "Argumento 'by' deve ter nomes de colunas únicos para agrupamento." + +#: groupingsets.R:57 +#, c-format +msgid "Argument 'sets' must be a list of character vectors." +msgstr "Argumento 'sets' deve ser uma lista de vetores de caracteres." + +#: groupingsets.R:62 +#, c-format +msgid "" +"All columns used in 'sets' argument must be in 'by' too. Columns used in " +"'sets' but not present in 'by': %s" +msgstr "" +"Todas as colunas usadas no argumento 'sets' também devem estar em 'by'. " +"Colunas usadas em 'sets', mas não presentes em 'by': %s" + +#: groupingsets.R:64 +#, c-format +msgid "" +"When using `id=TRUE` the 'x' data.table must not have a column named " +"'grouping'." +msgstr "" +"Ao usar `id=TRUE`, o data.table 'x' não deve ter uma coluna chamada " +"'grouping'." + +#: groupingsets.R:66 +#, c-format +msgid "" +"Character vectors in 'sets' list must not have duplicated column names " +"within a single grouping set." +msgstr "" +"Vetores de caracteres na lista 'sets' não devem ter nomes de colunas " +"duplicados dentro de um único conjunto de agrupamento." + +#: groupingsets.R:68 +#, c-format +msgid "" +"'sets' contains a duplicate (i.e., equivalent up to sorting) element at " +"index %d; as such, there will be duplicate rows in the output -- note that " +"grouping by A,B and B,A will produce the same aggregations. Use " +"`sets=unique(lapply(sets, sort))` to eliminate duplicates." +msgstr "" +"'sets' contém um elemento duplicado (isto é, equivalente até a ordenação) no " +"índice %d; assim, haverá linhas duplicadas na saída -- note que agrupar por " +"A,B e B,A produzirá as mesmas agregações. Use `sets=unique(lapply(sets, " +"sort))` para eliminar duplicados." + +#: groupingsets.R:73 +#, c-format +msgid "" +"Expression passed to grouping sets function must not update by reference. " +"Use ':=' on results of your grouping function." +msgstr "" +"Expressão passada para a função de conjuntos de agrupamento não deve " +"atualizar por referência. Use ':=' nos resultados da sua função de " +"agrupamento." + +#: groupingsets.R:80 +#, c-format +msgid "" +"When using `id=TRUE` the 'j' expression must not evaluate to a column named " +"'grouping'." +msgstr "" +"Ao usar `id=TRUE`, a expressão 'j' não deve avaliar para uma coluna chamada " +"'grouping'." + +#: groupingsets.R:82 +#, c-format +msgid "" +"There exists duplicated column names in the results, ensure the column " +"passed/evaluated in `j` and those in `by` are not overlapping." +msgstr "" +"Existem nomes de colunas duplicados nos resultados, certifique-se de que a " +"coluna passada/avaliada em `j` e as em `by` não se sobreponham." + +#: groupingsets.R:92 +#, c-format +msgid "" +"Using integer64 class columns require to have 'bit64' package installed." +msgstr "" +"Utilizando colunas da classe integer64 requer a instalação do pacote 'bit64'." + +#: last.R:38 last.R:79 +#, c-format +msgid "" +"'xts' class passed to %s function but 'xts' is not available, you should " +"have 'xts' installed already" +msgstr "" +"classe 'xts' foi passada para a função %s, mas 'xts' não está disponível. " +"Você deveria já ter 'xts' instalado" + +#: merge.R:4 +#, c-format +msgid "Argument 'sort' should be logical TRUE/FALSE" +msgstr "Argumento 'sort' deve ser lógico TRUE/FALSE" + +#: merge.R:6 +#, c-format +msgid "Argument 'no.dups' should be logical TRUE/FALSE" +msgstr "Argumento 'no.dups' deve ser lógico TRUE/FALSE" + +#: merge.R:18 +#, c-format +msgid "Neither of the input data.tables to join have columns." +msgstr "Nenhuma das data.tables de entrada para junção tem colunas." + +#: merge.R:20 merge.R:22 +#, c-format +msgid "Input data.table '%s' has no columns." +msgstr "data.table de entrada '%s' não tem colunas." + +#: merge.R:31 +#, c-format +msgid "`by.x` and `by.y` must be of same length." +msgstr "`by.x` e `by.y` devem ter o mesmo comprimento." + +#: merge.R:33 +#, c-format +msgid "Supplied both `by` and `by.x/by.y`. `by` argument will be ignored." +msgstr "Fornecidos ambos `by` e `by.x/by.y`. Argumento `by` será ignorado." + +#: merge.R:36 +#, c-format +msgid "A non-empty vector of column names is required for `by.x` and `by.y`." +msgstr "" +"Um vetor não vazio de nomes de colunas é necessário para `by.x` e `by.y`." + +#: merge.R:38 +#, c-format +msgid "Elements listed in `by.x` must be valid column names in x." +msgstr "Elementos listados em `by.x` devem ser nomes de colunas válidos em x." + +#: merge.R:40 +#, c-format +msgid "Elements listed in `by.y` must be valid column names in y." +msgstr "Elementos listados em `by.y` devem ser nomes de colunas válidos em y." + +#: merge.R:51 +#, c-format +msgid "A non-empty vector of column names for `by` is required." +msgstr "É necessário um vetor não vazio de nomes de colunas para `by`." + +#: merge.R:53 +#, c-format +msgid "Elements listed in `by` must be valid column names in x and y" +msgstr "" +"Os elementos listados em `by` devem ser nomes de colunas válidos em x e y." + +#: merge.R:61 +#, c-format +msgid "Unknown argument '%s' has been passed." +msgstr "Argumento desconhecido '%s' foi passado." + +#: merge.R:64 +#, c-format +msgid "Passed %d unknown and unnamed arguments." +msgstr "Passado %d argumentos desconhecidos e sem nome." + +#: merge.R:128 +#, c-format +msgid "column names %s are duplicated in the result" +msgstr "nomes das colunas %s estão duplicados no resultado" + +#: onAttach.R:23 +#, c-format +msgid "" +"data.table %s IN DEVELOPMENT built %s%s using %d threads (see ?getDTthreads)." +msgstr "" +"data.table %s EM DESENVOLVIMENTO construído %s%s usando %d threads (veja ?" +"getDTthreads)." + +#: onAttach.R:25 +#, c-format +msgid "data.table %s using %d threads (see ?getDTthreads)." +msgstr "data.table %s usando %d threads (veja ?getDTthreads)." + +#: onAttach.R:26 +#, c-format +msgid "Latest news: r-datatable.com" +msgstr "Últimas notícias: r-datatable.com" + +#: onAttach.R:27 +msgid "TRANSLATION CHECK" +msgstr "VERIFICAÇÃO DE TRADUÇÃO" + +#: onAttach.R:28 +#, c-format +msgid "" +"**********\n" +"Running data.table in English; package support is available in English only. " +"When searching for online help, be sure to also check for the English error " +"message. This can be obtained by looking at the po/R-.po and po/" +".po files in the package source, where the native language and " +"English error messages can be found side-by-side\n" +"**********" +msgstr "" +"**********\n" +"Executando data.table em inglês; o suporte ao pacote está disponível apenas " +"em inglês. Ao procurar ajuda online, certifique-se de verificar também a " +"mensagem de erro em inglês. Isso pode ser obtido examinando os arquivos po/R-" +".po e po/.po no código-fonte do pacote, onde as mensagens de " +"erro no idioma nativo e em inglês podem ser encontradas lado a lado.\n" +"**********" + +#: onAttach.R:30 +#, c-format +msgid "" +"**********\n" +"This development version of data.table was built more than 4 weeks ago. " +"Please update: data.table::update_dev_pkg()\n" +"**********" +msgstr "" +"**********\n" +"Esta versão de desenvolvimento do data.table foi construída há mais de 4 " +"semanas. Por favor, atualize: data.table::update_dev_pkg()\n" +"**********" + +#: onAttach.R:32 +#, c-format +msgid "" +"**********\n" +"This installation of data.table has not detected OpenMP support. It should " +"still work but in single-threaded mode." +msgstr "" +"**********\n" +"Esta instalação do data.table não detectou suporte ao OpenMP. Ainda deve " +"funcionar, mas em modo de single-threaded." + +#: onAttach.R:34 +#, c-format +msgid "" +"This is a Mac. Please read https://mac.r-project.org/openmp/. Please engage " +"with Apple and ask them for support. Check r-datatable.com for updates, and " +"our Mac instructions here: https://github.com/Rdatatable/data.table/wiki/" +"Installation. After several years of many reports of installation problems " +"on Mac, it's time to gingerly point out that there have been no similar " +"problems on Windows or Linux.\n" +"**********" +msgstr "" +"Este é um Mac. Por favor, leia https://mac.r-project.org/openmp/. Por favor, " +"envolva-se com a Apple e peça suporte. Verifique r-datatable.com para " +"atualizações e nossas instruções para Mac aqui: https://github.com/" +"Rdatatable/data.table/wiki/Installation. Após vários anos de muitos relatos " +"de problemas de instalação no Mac, é hora de apontar cuidadosamente que não " +"houve problemas semelhantes no Windows ou Linux.\n" +"**********" + +#: onAttach.R:36 +#, c-format +msgid "" +"This is %s. This warning should not normally occur on Windows or Linux where " +"OpenMP is turned on by data.table's configure script by passing -fopenmp to " +"the compiler. If you see this warning on Windows or Linux, please file a " +"GitHub issue.\n" +"**********" +msgstr "" +"Este é %s. Este aviso normalmente não deve ocorrer no Windows ou Linux, onde " +"o OpenMP é ativado pelo script de configuração do data.table passando -" +"fopenmp para o compilador. Se você vir este aviso no Windows ou Linux, por " +"favor, relate no rastreador de problemas no GitHub.\n" +"**********" + +#: onAttach.R:40 +#, c-format +msgid "" +"**********\n" +"This data.table installation was compiled for R < 3.4.0 (Apr 2017) and is " +"known to leak memory. Please upgrade R and reinstall data.table to fix the " +"leak. Maintaining and testing code branches to support very old versions " +"increases development time so please do upgrade R. We intend to bump data." +"table's dependency from 8 year old R 3.1.0 (Apr 2014) to 5 year old R 3.4.0 " +"(Apr 2017).\n" +"**********" +msgstr "" +"**********\n" +"Esta instalação do data.table foi compilada para o R < 3.4.0 (Abr 2017) e é " +"conhecida por vazar memória. Por favor, atualize o R e reinstale o data." +"table para corrigir o vazamento. Manter e testar ramificações de código para " +"suportar versões muito antigas aumenta o tempo de desenvolvimento, então, " +"por favor, atualize o R. Pretendemos aumentar a dependência do data.table de " +"R 3.1.0 (Abr 2014), de 8 anos, para R 3.4.0 (Abr 2017), de 5 anos.\n" +"**********" + +#: onLoad.R:9 +#, c-format +msgid "" +"Option 'datatable.nomatch' is defined but is now ignored. Please see note 11 " +"in v1.12.4 NEWS (Oct 2019), and note 14 in v1.14.2." +msgstr "" +"Opção 'datatable.nomatch' está definida, mas agora é ignorada. Por favor, " +"veja a nota 11 nas notícias de v1.12.4 (Outubro de 2019) e a nota 14 em " +"v1.14.2." + +#: onLoad.R:27 +#, c-format +msgid "" +"The data_table.%s version (%s) does not match the package (%s). Please close " +"all R sessions to release the old %s and reinstall data.table in a fresh R " +"session. The root cause is that R's package installer can in some " +"unconfirmed circumstances leave a package in a state that is apparently " +"functional but where new R code is calling old C code silently: https://bugs." +"r-project.org/bugzilla/show_bug.cgi?id=17478. Once a package is in this " +"mismatch state it may produce wrong results silently until you next upgrade " +"the package. Please help by adding precise circumstances to 17478 to move " +"the status to confirmed. This mismatch between R and C code can happen with " +"any package not just data.table. It is just that data.table has added this " +"check." +msgstr "" +"O data_table.%s versão (%s) não corresponde ao pacote (%s). Por favor, feche " +"todas as sessões do R para liberar a antiga %s e reinstale o data.table em " +"uma nova sessão do R. A causa raiz é que o instalador de pacotes do R pode, " +"em algumas circunstâncias não confirmadas, deixar um pacote em um estado " +"aparentemente funcional, mas onde o novo código R está chamando " +"silenciosamente o código C antigo: https://bugs.r-project.org/bugzilla/" +"show_bug.cgi?id=17478. Uma vez que um pacote esteja neste estado de " +"incompatibilidade, ele pode produzir resultados errados silenciosamente até " +"que você atualize o pacote novamente. Por favor, ajude adicionando " +"circunstâncias precisas ao 17478 para mover o status para confirmado. Essa " +"incompatibilidade entre o código R e C pode acontecer com qualquer pacote, " +"não apenas com o data.table. É apenas que o data.table adicionou essa " +"verificação." + +#: onLoad.R:31 +#, c-format +msgid "" +"This is R %s but data.table has been installed using R %s. The major version " +"must match. Please reinstall data.table." +msgstr "" +"Este é o R %s, mas o data.table foi instalado usando o R %s. A versão " +"principal deve corresponder. Por favor, reinstale o data.table." + +#: onLoad.R:97 +#, c-format +msgid "" +"Option 'datatable.CJ.names' no longer has any effect, as promised for 4 " +"years. It is now ignored. Manually name `...` entries as needed if you still " +"prefer the old behavior." +msgstr "" +"Opção 'datatable.CJ.names' não tem mais efeito, conforme prometido por 4 " +"anos. Agora é ignorada. Nomeie manualmente as entradas `...` conforme " +"necessário se ainda preferir o comportamento antigo." + +#: onLoad.R:102 +#, c-format +msgid "Unexpected base R behaviour: list(x) has copied x" +msgstr "Comportamento inesperado do R base: list(x) copiou x" + +#: onLoad.R:110 +#, c-format +msgid "Unexpected base R behaviour: names<- has copied column contents" +msgstr "" +"Comportamento inesperado do R base: names<- copiou o conteúdo da coluna" + +#: onLoad.R:120 +#, c-format +msgid "" +"Unexpected base R behaviour: DF[2,2]<- did not copy column 2 which was " +"assigned to" +msgstr "" +"Comportamento inesperado do R base: DF[2,2]<- não copiou a coluna 2 que foi " +"atribuída" + +#: onLoad.R:121 +#, c-format +msgid "" +"Unexpected base R behaviour: DF[2,2]<- copied the first column which was not " +"assigned to, too" +msgstr "" +"Comportamento inesperado do R base: DF[2,2]<- copiou também a primeira " +"coluna, que não foi atribuída" + +#: onLoad.R:123 +#, c-format +msgid "Unexpected base R behaviour: DF[2,2]<- has not copied address(DF)" +msgstr "Comportamento inesperado do R base: DF[2,2]<- não copiou address(DF)" + +#: openmp-utils.R:3 +#, c-format +msgid "Provide either threads= or percent= but not both" +msgstr "Forneça threads= ou percent=, mas não ambos" + +#: openmp-utils.R:4 +#, c-format +msgid "percent= is provided but is length %d" +msgstr "percent= foi fornecido, mas tem comprimento %d" + +#: openmp-utils.R:6 +#, c-format +msgid "percent==%d but should be a number between 2 and 100" +msgstr "percent==%d, mas deveria ser um número entre 2 e 100" + +#: print.data.table.R:19 +#, c-format +msgid "Valid options for col.names are 'auto', 'top', and 'none'" +msgstr "As opções válidas para col.names são 'auto', 'top', e 'none'" + +#: print.data.table.R:21 +#, c-format +msgid "Valid options for trunc.cols are TRUE and FALSE" +msgstr "Opções válidas para trunc.cols são TRUE e FALSE" + +#: print.data.table.R:23 +#, c-format +msgid "Column classes will be suppressed when col.names is 'none'" +msgstr "As classes de colunas serão suprimidas quando col.names for 'none'" + +#: print.data.table.R:156 +#, c-format +msgid "" +"Internal structure doesn't seem to be a list. Possibly corrupt data.table." +msgstr "" +"A estrutura interna não parece ser uma lista. Possivelmente data.table " +"corrompida." + +#: programming.R:14 programming.R:40 +#, c-format +msgid "'x' must be a list" +msgstr "'x' deve ser uma lista" + +#: programming.R:22 +#, c-format +msgid "" +"Character objects provided in the input are not scalar objects, if you need " +"them as character vector rather than a name, then wrap each into 'I' call: %s" +msgstr "" +"Objetos de caracteres fornecidos na entrada não são objetos escalares, se " +"você precisar deles como vetor de caracteres em vez de um nome, então " +"envolva cada um 'I' na chamada: %s" + +#: programming.R:50 +#, c-format +msgid "'env' must not be missing" +msgstr "'env' não deve estar ausente" + +#: programming.R:56 +#, c-format +msgid "'env' must be a list or an environment" +msgstr "'env' deve ser uma lista ou um ambiente" + +#: programming.R:63 +#, c-format +msgid "'env' argument does not have names" +msgstr "argumento 'env' não tem nomes" + +#: programming.R:65 +#, c-format +msgid "'env' argument has zero char names" +msgstr "argumento 'env' tem zero nomes de caracteres" + +#: programming.R:67 +#, c-format +msgid "'env' argument has NA names" +msgstr "argumento 'env' tem nomes NA" + +#: programming.R:69 +#, c-format +msgid "'env' argument has duplicated names" +msgstr "argumento 'env' tem nomes duplicados" + +#: setkey.R:3 +#, c-format +msgid "" +"x may no longer be the character name of the data.table. The possibility was " +"undocumented and has been removed." +msgstr "" +"x pode não ser mais o nome da data.table do tipo caractere. A possibilidade " +"não era documentada e foi removida." + +#: setkey.R:23 +#, c-format +msgid "" +"key(x)<-value is deprecated and not supported. Please change to use setkey() " +"with perhaps copy(). Has been warning since 2012." +msgstr "" +"key(x)<-value está obsoleto e não é suportado. Por favor, mude para usar " +"setkey() com talvez copy(). Tem sido um aviso desde 2012." + +#: setkey.R:39 +#, c-format +msgid "x is not a data.table" +msgstr "x não é uma data.table" + +#: setkey.R:40 +#, c-format +msgid "" +"cols is not a character vector. Please see further information in ?setkey." +msgstr "" +"cols não é um vetor de caracteres. Por favor, veja mais informações em ?" +"setkey." + +#: setkey.R:41 +#, c-format +msgid "" +"Setting a physical key on .SD is reserved for possible future use; to modify " +"the original data's order by group. Try setindex() instead. Or, set*(copy(." +"SD)) as a (slow) last resort." +msgstr "" +"Definir uma chave física em .SD está reservado para possível uso futuro; " +"para modificar a ordem dos dados originais por grupo. Tente setindex() em " +"vez disso. Ou, set*(copy(.SD)) como último recurso (lento)." + +#: setkey.R:43 +#, c-format +msgid "" +"cols is a character vector of zero length. Removed the key, but use NULL " +"instead, or wrap with suppressWarnings() to avoid this warning." +msgstr "" +"cols é um vetor de caracteres de comprimento zero. A chave foi removida, mas " +"use NULL em vez disso, ou envolva com suppressWarnings() para evitar este " +"aviso." + +#: setkey.R:47 +#, c-format +msgid "cols is the empty string. Use NULL to remove the key." +msgstr "cols é uma string vazia. Use NULL para remover a chave." + +#: setkey.R:48 setkey.R:277 +#, c-format +msgid "cols contains some blanks." +msgstr "cols contém alguns espaços em branco." + +#: setkey.R:51 setkey.R:281 +#, c-format +msgid "some columns are not in the data.table: %s" +msgstr "algumas colunas não estão na data.table: %s" + +#: setkey.R:73 setkey.R:282 +#, c-format +msgid "" +"x contains a column called '.xi'. Conflicts with internal use by data.table." +msgstr "" +"x contém uma coluna chamada '.xi'. Conflita com o uso interno do data.table." + +#: setkey.R:76 +#, c-format +msgid "" +"Column '%s' is type '%s' which is not supported as a key column type, " +"currently." +msgstr "" +"Coluna '%s' é do tipo '%s', que atualmente não é suportado como tipo de " +"coluna chave." + +#: setkey.R:78 setkey.R:287 +#, c-format +msgid "" +"Internal error. 'cols' should be character at this point in setkey; please " +"report." +msgstr "" +"Erro interno. 'cols' deve ser do tipo caractere neste ponto em setkey; por " +"favor, reporte." + +#: setkey.R:125 +#, c-format +msgid "Internal error: index '%s' exists but is invalid" +msgstr "Erro interno: o índice '%s' existe, mas é inválido" + +#: setkey.R:157 +#, c-format +msgid "x is vector but 'by' is supplied" +msgstr "x é um vetor, mas 'by' foi fornecido" + +#: setkey.R:167 +#, c-format +msgid "x is a single vector, non-NULL 'by' doesn't make sense" +msgstr "x é um único vetor, 'by' não NULL não faz sentido." + +#: setkey.R:199 +#, c-format +msgid "Attempting to order a 0-column data.table or data.frame." +msgstr "Tentativa de ordenar uma data.table ou um data.frame com 0 colunas." + +#: setkey.R:204 +#, c-format +msgid "" +"The first item passed to [f]order is a plain list but there are more items. " +"It should be a data.table or data.frame." +msgstr "" +"O primeiro item passado para [f]order é uma lista simples, mas há mais " +"itens. Deve ser uma data.table ou um data.frame." + +#: setkey.R:221 +#, c-format +msgid "Internal code should not be being called on type double" +msgstr "Código interno não deveria estar sendo chamado em um tipo double" + +#: setkey.R:229 +#, c-format +msgid "" +"Input is not a vector of type double. New parallel sort has only been done " +"for double vectors so far. Using one thread." +msgstr "" +"Entrada não é um vetor do tipo double. A nova ordenação paralela só foi " +"feita para vetores do tipo double até agora. Usando uma thread." + +#: setkey.R:230 +#, c-format +msgid "" +"New parallel sort has not been implemented for decreasing=TRUE so far. Using " +"one thread." +msgstr "" +"A nova ordenação paralela ainda não foi implementada para decreasing=TRUE " +"até o momento. Usando uma thread." + +#: setkey.R:231 +#, c-format +msgid "" +"New parallel sort has not been implemented for vectors containing NA values " +"so far. Using one thread." +msgstr "" +"A nova ordenação paralela ainda não foi implementada para vetores contendo " +"valores NA até o momento. Usando uma thread." + +#: setkey.R:243 setkey.R:269 +#, c-format +msgid "x must be a data.frame or data.table" +msgstr "x deve ser uma data.frame ou um data.table" + +#: setkey.R:271 +#, c-format +msgid "na.last must be logical TRUE/FALSE" +msgstr "na.last deve ser lógico TRUE/FALSE" + +#: setkey.R:272 +#, c-format +msgid "" +"cols is not a character vector. Please see further information in ?setorder." +msgstr "" +"cols não é um vetor de caracteres. Por favor, veja mais informações em ?" +"setorder." + +#: setkey.R:274 +#, c-format +msgid "" +"cols is a character vector of zero length. Use NULL instead, or wrap with " +"suppressWarnings() to avoid this warning." +msgstr "" +"cols é um vetor de caracteres de comprimento zero. Use NULL em vez disso, ou " +"envolva com suppressWarnings() para evitar este aviso." + +#: setkey.R:285 +#, c-format +msgid "Column '%s' is type '%s' which is not supported for ordering currently." +msgstr "" +"Coluna '%s' é do tipo '%s', que atualmente não é suportado para ordenação." + +#: setkey.R:329 +#, c-format +msgid "" +"'sorted' is TRUE but element %d is non-atomic, which can't be sorted; try " +"setting sorted = FALSE" +msgstr "" +"'sorted' é TRUE, mas o elemento %d é não atômico, o que não pode ser " +"ordenado; tente definir sorted = FALSE" + +#: setkey.R:344 +#, c-format +msgid "" +"Cross product of elements provided to CJ() would result in %.0f rows which " +"exceeds .Machine$integer.max == %d" +msgstr "" +"Produto cruzado dos elementos fornecidos a CJ() resultaria em %.0f linhas " +"que excedem .Machine$integer.max == %d" + +#: setops.R:3 setops.R:40 +#, c-format +msgid "x and y must both be data.tables" +msgstr "x e y devem ser ambos data.tables" + +#: setops.R:9 +#, c-format +msgid "length(by.x) != length(by.y)" +msgstr "length(by.x) != length(by.y)" + +#: setops.R:17 +#, c-format +msgid "" +"When x's column ('%s') is character, the corresponding column in y ('%s') " +"should be factor or character, but found incompatible type '%s'." +msgstr "" +"Quando a coluna de x ('%s') é do tipo caractere, a coluna correspondente em " +"y ('%s') deve ser do tipo fator ou caractere, mas foi encontrado um tipo " +"incompatível '%s'." + +#: setops.R:19 +#, c-format +msgid "" +"When x's column ('%s') is factor, the corresponding column in y ('%s') " +"should be character or factor, but found incompatible type '%s'." +msgstr "" +"Quando a coluna de x ('%s') é do tipo fator, a coluna correspondente em y " +"('%s') deve ser do tipo caractere ou fator, mas foi encontrado um tipo " +"incompatível '%s'." + +#: setops.R:21 +#, c-format +msgid "" +"When x's column ('%s') is integer or numeric, the corresponding column in y " +"('%s') can not be character or logical types, but found incompatible type " +"'%s'." +msgstr "" +"Quando a coluna de x ('%s') é do tipo inteiro ou numérico, a coluna " +"correspondente em y ('%s') não pode ser do tipo caractere ou lógico, mas foi " +"encontrado um tipo incompatível '%s'." + +#: setops.R:39 +#, c-format +msgid "argument 'all' should be logical of length one" +msgstr "argumento 'all' deve ser lógico de comprimento um" + +#: setops.R:41 +#, c-format +msgid "x and y must have the same column names" +msgstr "x e y devem ter os mesmos nomes de colunas" + +#: setops.R:42 +#, c-format +msgid "x and y must have the same column order" +msgstr "x e y devem ter a mesma ordem de colunas" + +#: setops.R:45 +#, c-format +msgid "unsupported column type(s) found in x or y: %s" +msgstr "tipo(s) de coluna não suportados encontrados em x ou y: %s" + +#: setops.R:53 +#, c-format +msgid "Item %d of x is '%s' but the corresponding item of y is '%s'." +msgstr "Item %d de x é '%s', mas o item correspondente de y é '%s'." + +#: setops.R:55 +#, c-format +msgid "None of the datasets should contain a column named '.seqn'" +msgstr "Nenhum dos conjuntos de dados deve conter uma coluna chamada '.seqn'" + +#: setops.R:146 +#, c-format +msgid "Internal error: ncol(current)==ncol(target) was checked above" +msgstr "Erro interno: ncol(current)==ncol(target) foi verificado acima" + +#: setops.R:159 setops.R:170 +#, c-format +msgid "Datasets have different %s. 'target': %s. 'current': %s." +msgstr "Conjuntos de dados têm diferente %s. 'target': %s. 'current': %s." + +#: setops.R:161 setops.R:162 +#, c-format +msgid "has no key" +msgstr "não tem chave" + +#: setops.R:172 setops.R:173 +#, c-format +msgid "has no index" +msgstr "não tem índice" + +#: setops.R:190 +#, c-format +msgid "None of the datasets to compare should contain a column named '.seqn'" +msgstr "" +"Nenhum dos conjuntos de dados a serem comparados deve conter uma coluna " +"chamada '.seqn'" + +#: setops.R:193 +#, c-format +msgid "" +"Datasets to compare with 'ignore.row.order' must not have unsupported column " +"types: %s" +msgstr "" +"Conjuntos de dados a serem comparados com 'ignore.row.order' não devem ter " +"tipos de colunas não suportados:%s" + +#: setops.R:195 +#, c-format +msgid "" +"Argument 'tolerance' was forced to lowest accepted value `sqrt(." +"Machine$double.eps)` from provided %s" +msgstr "" +"Argumento 'tolerance' foi forçado ao valor mínimo aceito de `sqrt(." +"Machine$double.eps)` a partir do fornecido %s" + +#: setops.R:208 +#, c-format +msgid "" +"Duplicate rows in datasets, numeric columns and ignore.row.order cannot be " +"used with non 0 tolerance argument" +msgstr "" +"Linhas duplicadas nos conjuntos de dados, colunas numéricas e ignore.row." +"order não podem ser usadas com argumento de tolerância diferente de 0" + +#: setops.R:222 +#, c-format +msgid "" +"Factor columns and ignore.row.order cannot be used with non 0 tolerance " +"argument" +msgstr "" +"Colunas de fator e ignore.row.order não podem ser usadas com argumento de " +"tolerância diferente de 0" + +#: setops.R:266 +#, c-format +msgid "Internal error: factor type mismatch should have been caught earlier" +msgstr "" +"Erro interno: a incompatibilidade de tipo fator deveria ter sido detectada " +"anteriormente" + +#: shift.R:3 +#, c-format +msgid "Provided argument fill=%s will be ignored since type='cyclic'." +msgstr "O argumento fornecido fill=%s será ignorado, pois type='cyclic'." + +#: tables.R:46 +#, c-format +msgid "order.col='%s' not a column name of info" +msgstr "order.col='%s' não é um nome de coluna de info" + +#: test.data.table.R:17 +#, c-format +msgid "data.table package is loaded. Unload or start a fresh R session." +msgstr "" +"Pacote data.table está carregado. Descarregue ou inicie uma nova sessão do R." + +#: test.data.table.R:33 +#, c-format +msgid "" +"script must end with '.Rraw'. If a file ending '.Rraw.bz2' exists, that will " +"be found and used." +msgstr "" +"script deve terminar com '.Rraw'. Se existir um arquivo terminando em '.Rraw." +"bz2', ele será encontrado e usado." + +#: test.data.table.R:63 +#, c-format +msgid "Neither %s nor %s exist in %s" +msgstr "Nem %s ou %sexistem em %s" + +#: test.data.table.R:118 +msgid "object '%s' not found" +msgstr "objeto '%s' não encontrado" + +#: test.data.table.R:142 +#, c-format +msgid "" +"memtest intended for Linux. Step through data.table:::rss() to see what went " +"wrong." +msgstr "" +"memtest destinado para Linux. Percorra data.table:::rss() para ver o que deu " +"errado." + +#: test.data.table.R:196 +#, c-format +msgid "Attempt to subset to %d tests matching '%s' failed, running full suite." +msgstr "" +"A tentativa de obter subconjunto de %d testes correspondendo a '%s' falhou, " +"executando a suíte completa." + +#: test.data.table.R:244 +#, c-format +msgid "Failed in %s after test %s before the next test() call in %s" +msgstr "Falhou em %s após o teste %s antes da próxima chamada de test() em %s" + +#: test.data.table.R:254 +#, c-format +msgid "%d error(s) out of %d. Search %s for test number(s) %s. Duration: %s." +msgstr "%d erro(s) de %d. Pesquise %s por número(s) de teste %s. Duração: %s." + +#: test.data.table.R:267 +#, c-format +msgid "Timings count mismatch: %d vs %d" +msgstr "Contagem de tempos não corresponde: %d vs %d" + +#: test.data.table.R:396 +#, c-format +msgid "" +"Test %s is invalid: when error= is provided it does not make sense to pass y " +"as well" +msgstr "" +"Teste %s é inválido: quando error= é fornecido, não faz sentido passar y " +"também" + +#: timetaken.R:3 +#, c-format +msgid "Use started.at=proc.time() not Sys.time() (POSIXt and slow)" +msgstr "Use started.at=proc.time(), não Sys.time() (POSIXt and slow)" + +#: transpose.R:7 +#, c-format +msgid "make.names='%s' not found in names of input" +msgstr "make.names='%s' não encontrado nos nomes da entrada" + +#: transpose.R:12 +#, c-format +msgid "make.names=%d is out of range [1,ncol=%d]" +msgstr "make.names=%d está fora do intervalo [1, ncol=%d]" + +#: transpose.R:28 +#, c-format +msgid "'names' must be TRUE/FALSE or a character vector." +msgstr "'names' deve ser TRUE/FALSE ou um vetor de caracteres." + +#: transpose.R:34 +#, c-format +msgid "'keep' should contain integer values between %d and %d." +msgstr "'keep' deve conter valores inteiros entre %d e %d." + +#: transpose.R:51 +#, c-format +msgid "The argument 'type.convert' does not support empty list." +msgstr "O argumento 'type.convert' não suporta lista vazia." + +#: transpose.R:57 +#, c-format +msgid "" +"When the argument 'type.convert' contains an unnamed element, it is expected " +"to be the last element and should be a function. More than one unnamed " +"element is not allowed unless all elements are functions with length equal " +"to %d (the length of the transpose list or 'keep' argument if it is " +"specified)." +msgstr "" +"Quando o argumento 'type.convert' contém um elemento não nomeado, espera-se " +"que seja o último elemento e deve ser uma função. Mais de um elemento não " +"nomeado não é permitido, a menos que todos os elementos sejam funções com " +"comprimento igual a %d (o comprimento da lista de transposição ou argumento " +"'keep', se especificado)." + +#: transpose.R:66 +#, c-format +msgid "" +"When the argument 'type.convert' contains transpose list indices, it should " +"be a named list of non-missing integer values (with no duplicate) except the " +"last element that should be unnamed if it is a function." +msgstr "" +"Quando o argumento 'type.convert' contém índices de lista de transposição, " +"ele deve ser uma lista nomeada de valores inteiros não ausentes (sem " +"duplicatas), exceto o último elemento, que deve ser não nomeado se for uma " +"função." + +#: transpose.R:68 +#, c-format +msgid "" +"When the argument 'type.convert' contains transpose list indices, they " +"should be integer values contained in the argument 'keep' (if it is " +"specified) or be between %d and %d (if it is not). But '%s' is/are not " +"contained in '%s'." +msgstr "" +"Quando o argumento 'type.convert' contém índices de lista de transposição, " +"eles devem ser valores inteiros contidos no argumento 'keep' (se " +"especificado) ou estar entre %d e %d (se não especificado). Mas '%s' não " +"está(ão) contido(s) em '%s'." + +#: transpose.R:74 +#, c-format +msgid "" +"In the argument 'type.convert', '%s' was ignored because all elements in the " +"transpose list or elements corresponding to indices specified in the 'keep' " +"argument have already been converted." +msgstr "" +"No argumento 'type.convert', '%s' foi ignorado porque todos os elementos na " +"lista de transposição ou elementos correspondentes aos índices especificados " +"no argumento 'keep' já foram convertidos." + +#: transpose.R:83 +#, c-format +msgid "" +"The argument 'type.convert' should be TRUE/FALSE, a function, a list of " +"functions, or a named list of pairs 'fun=indices' with optionally one " +"unnamed element (a function) but an object of type '%s' was provided." +msgstr "" +"O argumento 'type.convert' deve ser TRUE/FALSE, uma função, uma lista de " +"funções ou uma lista nomeada de pares 'fun=indices' com opcionalmente um " +"elemento não nomeado (uma função), mas foi fornecido um objeto do tipo '%s'." + +#: transpose.R:88 +#, c-format +msgid "length(names) (= %d) is not equal to length(%s) (= %d)." +msgstr "length(names) (= %d) não é igual a length(%s) (= %d)." + +#: uniqlist.R:11 +#, c-format +msgid "l not type list" +msgstr "l não é do tipo lista" + +#: utils.R:18 +#, c-format +msgid "Argument 'nan' must be length 1" +msgstr "Argumento 'nan' deve ter comprimento 1" + +#: utils.R:21 +#, c-format +msgid "Argument 'nan' must be NA or NaN" +msgstr "Argumento 'nan' deve ser NA ou NaN" + +#: utils.R:28 +msgid "Internal error: use endsWithAny instead of base::endsWith" +msgstr "Erro interno: use endsWithAny em vez de base::endsWith" + +#: utils.R:39 utils.R:48 +#, c-format +msgid "x not boolean" +msgstr "x não é booleano" + +#: utils.R:59 +#, c-format +msgid "" +"Some columns are type 'integer64' but package bit64 is not installed. Those " +"columns will print as strange looking floating point data. There is no need " +"to reload the data. Simply install.packages('bit64') to obtain the integer64 " +"print method and print the data again." +msgstr "" +"Algumas colunas são do tipo 'integer64', mas o pacote bit64 não está " +"instalado. Essas colunas serão exibidas como estranhos dados de ponto " +"flutuante. Não há necessidade de recarregar os dados. Simplesmente use " +"install.packages('bit64') para obter o método de impressão de integer64 e " +"imprima os dados novamente." + +#: xts.R:3 +#, c-format +msgid "keep.rownames must be length 1" +msgstr "keep.rownames deve ter comprimento 1" + +#: xts.R:4 +#, c-format +msgid "keep.rownames must not be NA" +msgstr "keep.rownames não deve ser NA" + +#: xts.R:10 +#, c-format +msgid "" +"Input xts object should not have '%s' column because it would result in " +"duplicate column names. Rename '%s' column in xts or use `keep.rownames` to " +"change the index column name." +msgstr "" +"O objeto xts de entrada não deve ter a coluna '%s' porque resultaria em " +"nomes de colunas duplicados. Renomeie a coluna '%s' no xts ou use `keep." +"rownames` para alterar o nome da coluna de índice." + +#: xts.R:20 +#, c-format +msgid "" +"data.table must have a time based column in first position, use " +"`setcolorder` function to change the order, or see ?timeBased for supported " +"types" +msgstr "" +"data.table deve ter uma coluna baseada em tempo na primeira posição, use a " +"função `setcolorder` para alterar a ordem, ou veja ?timeBased para os tipos " +"suportados." + +#: xts.R:24 +#, c-format +msgid "Following columns are not numeric and will be omitted: %s" +msgstr "As seguintes colunas não são numéricas e serão omitidas: %s" + +#: print.data.table.R:53 +msgid "Index: %s\n" +msgid_plural "Indices: %s\n" +msgstr[0] "Índice: %s\n" +msgstr[1] "Índices: %s\n" diff --git a/po/pt_BR.po b/po/pt_BR.po new file mode 100644 index 000000000..284be4046 --- /dev/null +++ b/po/pt_BR.po @@ -0,0 +1,5270 @@ +# +# Translators: +# Italo Santos , 2024 +# Leonardo Fontenelle , 2024 +# Rafael Fontenelle , 2024 +# +msgid "" +msgstr "" +"Project-Id-Version: data.table 1.15.99\n" +"POT-Creation-Date: 2024-06-23 12:07-0300\n" +"PO-Revision-Date: 2024-06-23 16:40-0300\n" +"Last-Translator: Leonardo Fontenelle \n" +"Language-Team: Brazilian Portuguese\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Gtranslator 46.1\n" + +#: assign.c:7 +msgid "Internal error: finalizer hasn't received an ExternalPtr" +msgstr "Erro interno: finalizador não recebeu um ExternalPtr" + +#: assign.c:9 +msgid "Internal error: finalizer's ExternalPtr doesn't see names in tag" +msgstr "Erro interno: ExternalPtr do finalizador não vê nomes na tag" + +#: assign.c:12 +#, c-format +msgid "Internal error: finalizer sees l=%d, tl=%d" +msgstr "Erro interno: finalizador vê l=%d, tl=%d" + +#: assign.c:121 +msgid "" +".internal.selfref ptr is NULL. This is expected and normal for a data.table " +"loaded from disk. Please remember to always setDT() immediately after " +"loading to prevent unexpected behavior. If this table was not loaded from " +"disk or you've already run setDT(), please report to data.table issue " +"tracker.\n" +msgstr "" +"ptr de .internal.selfref é NULL. Isso é esperado e normal para uma data." +"table carregada do disco. Lembre-se de sempre executar setDT() imediatamente " +"após o carregamento para evitar comportamento inesperado. Se esta tabela não " +"foi carregada do disco ou você já executou setDT(), por favor, relate isso " +"no rastreador de problemas do data.table.\n" + +#: assign.c:124 +msgid "Internal error: .internal.selfref ptr is neither NULL nor R_NilValue" +msgstr "Erro interno: ptr de .internal.selfref não é NULL nem R_NilValue" + +#: assign.c:126 +msgid "" +"Internal error: .internal.selfref tag is neither NULL nor a character vector" +msgstr "" +"Erro interno: tag de .internal.selfref não é NULL nem um vetor de caracteres" + +#: assign.c:179 +msgid "Internal error: length(names)>0 but 0, mas =0 and not NA." +msgstr "getOption('datatable.alloc')==%d. Deve ser >=0 e não NA." + +#: assign.c:292 between.c:16 between.c:22 forder.c:460 forder.c:463 frollR.c:40 +#: frollR.c:94 fsort.c:105 gsumm.c:343 gsumm.c:579 gsumm.c:723 gsumm.c:860 +#: gsumm.c:1016 gsumm.c:1108 nafill.c:103 openmp-utils.c:79 uniqlist.c:354 +#: utils.c:107 utils.c:109 +#, c-format +msgid "%s must be TRUE or FALSE" +msgstr "%s deve ser TRUE ou FALSE" + +#: assign.c:340 +msgid "assign has been passed a NULL dt" +msgstr "assign recebeu uma dt NULL" + +#: assign.c:341 +msgid "dt passed to assign isn't type VECSXP" +msgstr "dt passada para a assign não é do tipo VECSXP" + +#: assign.c:343 +msgid "" +".SD is locked. Updating .SD by reference using := or set are reserved for " +"future use. Use := in j directly. Or use copy(.SD) as a (slow) last resort, " +"until shallow() is exported." +msgstr "" +".SD é travado. A atualização de .SD por referência usando := ou set está " +"reservada para uso futuro. Use := em j diretamente. Ou use copy(.SD) como um " +"último recurso (lento), até que shallow() seja exportado." + +#: assign.c:351 +msgid "Internal error: dt passed to Cassign is not a data.table or data.frame" +msgstr "Erro interno: dt passada para Cassign não é data.table ou data.frame" + +#: assign.c:355 +msgid "dt passed to assign has no names" +msgstr "dt passada para assign não tem nomes" + +#: assign.c:359 +msgid "" +"data.table is NULL; malformed. A null data.table should be an empty list. " +"typeof() should always return 'list' for data.table." +msgstr "" +"data.table é NULL; malformado. Uma data.table nula deve ser uma lista vazia. " +"typeof() deve sempre retornar \"list\" para data.table." + +#: assign.c:369 +#, c-format +msgid "Assigning to all %d rows\n" +msgstr "Atribuindo a todas as %d linhas\n" + +#: assign.c:374 +msgid "" +"Coerced i from numeric to integer. Please pass integer for efficiency; e.g., " +"2L rather than 2" +msgstr "" +"Foi feita coerção de i de numérico para inteiro. Por favor, passe um número " +"inteiro para obter eficiência; por exemplo, 2L em vez de 2" + +#: assign.c:377 +#, c-format +msgid "" +"i is type '%s'. Must be integer, or numeric is coerced with warning. If i is " +"a logical subset, simply wrap with which(), and take the which() outside the " +"loop if possible for efficiency." +msgstr "" +"i é do tipo '%s'. Deve ser inteiro ou é feita coerção de numérico com aviso. " +"Se i for um subconjunto lógico, simplesmente envolva which() e leve which() " +"para fora, se possível, para maior eficiência." + +#: assign.c:383 subset.c:165 +#, c-format +msgid "i[%d] is %d which is out of range [1,nrow=%d]" +msgstr "i[%d] é %d, que está fora do intervalo [1,nrow=%d]" + +#: assign.c:386 +#, c-format +msgid "Assigning to %d row subset of %d rows\n" +msgstr "Atribuindo para um subconjunto de %d linhas, de %d linhas\n" + +#: assign.c:394 +#, c-format +msgid "Added %d new column%s initialized with all-NA\n" +msgstr "Adicionada(s) %d nova(s) coluna%s inicializada inteiramente NA\n" + +#: assign.c:399 +msgid "length(LHS)==0; no columns to delete or assign RHS to." +msgstr "" +"length(LHS)==0; nenhuma coluna para excluir ou para a qual atribuir o lado " +"direito (RHS)." + +#: assign.c:413 +msgid "" +"set() on a data.frame is for changing existing columns, not adding new ones. " +"Please use a data.table for that. data.table's are over-allocated and don't " +"shallow copy." +msgstr "" +"set() em um data.frame serve para alterar colunas existentes, não para " +"adicionar novas. Por favor, use uma data.table para isso. As data.tables são " +"superalocadas e não sofrem cópias rasas." + +#: assign.c:424 +msgid "" +"Coerced j from numeric to integer. Please pass integer for efficiency; e.g., " +"2L rather than 2" +msgstr "" +"Foi feita coerção do j de numérico para inteiro. Por favor, passe um número " +"inteiro obter eficiência; por exemplo, 2L em vez de 2" + +#: assign.c:427 +#, c-format +msgid "" +"j is type '%s'. Must be integer, character, or numeric is coerced with " +"warning." +msgstr "" +"j é do tipo '%s'. Deve ser inteiro, caractere ou numérico sofre coerção com " +"aviso." + +#: assign.c:429 +msgid "" +"Can't assign to the same column twice in the same query (duplicates " +"detected)." +msgstr "" +"Não é possível atribuir à mesma coluna duas vezes na mesma consulta " +"(duplicatas detectadas)." + +#: assign.c:430 +msgid "newcolnames is supplied but isn't a character vector" +msgstr "newcolnames é fornecido, mas não é um vetor de caracteres" + +#: assign.c:432 +#, c-format +msgid "RHS_list_of_columns == %s\n" +msgstr "RHS_list_of_columns == %s\n" + +#: assign.c:437 +#, c-format +msgid "" +"RHS_list_of_columns revised to true because RHS list has 1 item which is " +"NULL, or whose length %d is either 1 or targetlen (%d). Please unwrap RHS.\n" +msgstr "" +"RHS_list_of_columns revisado para true porque a lista no lado direito (RHS) " +"tem 1 item que é NULL ou cujo comprimento %d é 1 ou targetlen (%d). Por " +"favor, desembrulhe o lado direito.\n" + +#: assign.c:442 +#, c-format +msgid "" +"Supplied %d columns to be assigned an empty list (which may be an empty data." +"table or data.frame since they are lists too). To delete multiple columns " +"use NULL instead. To add multiple empty list columns, use list(list())." +msgstr "" +"%d colunas fornecidas para serem atribuídas a uma lista vazia (que pode ser " +"um data.table ou data.frame vazio, pois também são listas). Para excluir " +"várias colunas, use NULL. Para adicionar várias colunas de lista vazias, use " +"list(list())." + +#: assign.c:447 +#, c-format +msgid "Recycling single RHS list item across %d columns. Please unwrap RHS.\n" +msgstr "" +"Reciclando um único item da lista do lado direito (RHS) em %d colunas. Por " +"favor, desembrulhe o lado direito.\n" + +#: assign.c:449 +#, c-format +msgid "" +"Supplied %d columns to be assigned %d items. Please see NEWS for v1.12.2." +msgstr "" +"Fornecidas %d colunas para serem atribuídos %d itens. Por favor, veja NEWS " +"para v1.12.2." + +#: assign.c:457 +#, c-format +msgid "" +"Item %d of column numbers in j is %d which is outside range [1,ncol=%d]. " +"set() on a data.frame is for changing existing columns, not adding new ones. " +"Please use a data.table for that." +msgstr "" +"Item %d dos números de coluna em j é %d, o que está fora da faixa [1," +"ncol=%d]. set() em um data.frame é para alterar colunas existentes, não para " +"adicionar novas. Por favor, use uma data.table para isso." + +#: assign.c:458 +#, c-format +msgid "" +"Item %d of column numbers in j is %d which is outside range [1,ncol=%d]. Use " +"column names instead in j to add new columns." +msgstr "" +"Item %d dos números de coluna em j é %d, o que está fora da faixa [1," +"ncol=%d]. Use nomes de coluna em vez disso em j para adicionar novas colunas." + +#: assign.c:463 +msgid "When deleting columns, i should not be provided" +msgstr "Ao excluir colunas, i não deve ser fornecido" + +#: assign.c:469 +#, c-format +msgid "" +"RHS of assignment to existing column '%s' is zero length but not NULL. If " +"you intend to delete the column use NULL. Otherwise, the RHS must have " +"length > 0; e.g., NA_integer_. If you are trying to change the column type " +"to be an empty list column then, as with all column type changes, provide a " +"full length RHS vector such as vector('list',nrow(DT)); i.e., 'plonk' in the " +"new column." +msgstr "" +"O lado direito (RHS) da atribuição à coluna existente '%s' tem comprimento " +"zero, mas não é NULL. Se você pretende excluir a coluna, use NULL. Caso " +"contrário, o lado direito (RHS) deverá ter comprimento > 0; por exemplo, " +"NA_integer_. Se você estiver tentando alterar o tipo de coluna para uma " +"coluna de lista vazia então, como em todas as alterações de tipo de coluna, " +"forneça no lado direito (RHS) um vetor de comprimento completo, como " +"vector('list',nrow(DT)); ou seja, 'plonk' na nova coluna." + +#: assign.c:474 +#, c-format +msgid "" +"Internal error in assign.c: length(newcolnames)=%d, length(names)=%d, coln=%d" +msgstr "" +"Erro interno em assign.c: length(newcolnames)=%d, length(names)=%d, coln=%d" + +#: assign.c:476 +#, c-format +msgid "" +"Tried to assign NULL to column '%s', but this column does not exist to remove" +msgstr "" +"Tentado atribuir NULL a coluna '%s', mas essa coluna não existe para remover" + +#: assign.c:484 +#, c-format +msgid "%d column matrix RHS of := will be treated as one vector" +msgstr "A matriz coluna %d ao lado direito de := será tratada como um vetor" + +#: assign.c:489 +#, c-format +msgid "" +"Can't assign to column '%s' (type 'factor') a value of type '%s' (not " +"character, factor, integer or numeric)" +msgstr "" +"Não é possível atribuir para a coluna '%s' (tipo 'factor') um valor de tipo " +"'%s' (não um caractere, fator, inteiro ou numérico)" + +#: assign.c:495 +#, c-format +msgid "" +"Supplied %d items to be assigned to %d items of column '%s'. If you wish to " +"'recycle' the RHS please use rep() to make this intent clear to readers of " +"your code." +msgstr "" +"Fornecidos %d itens a serem atribuídos a %d itens da coluna '%s'. Se você " +"deseja \"reciclar\" o lado direito (RHS), use rep() para deixar essa " +"intenção clara para os leitores do seu código." + +#: assign.c:505 +msgid "" +"This data.table has either been loaded from disk (e.g. using readRDS()/" +"load()) or constructed manually (e.g. using structure()). Please run setDT() " +"or setalloccol() on it first (to pre-allocate space for new columns) before " +"assigning by reference to it." +msgstr "" +"Esta data.table foi carregada do disco (por exemplo, usando readRDS()/" +"load()) ou construída manualmente (por exemplo, usando structure()). Favor " +"executar setDT() ou setalloccol() nela (para pré-alocar espaço para novas " +"colunas) antes de atribuir por referência a ela." + +#: assign.c:506 +#, c-format +msgid "" +"Internal error: oldtncol(%d) < oldncol(%d). Please report to data.table " +"issue tracker, including result of sessionInfo()." +msgstr "" +"Erro interno: oldncol(%d) < oldncol(%d). Por favor, relate isso no " +"rastreador de problemas do data.table, incluindo o resultado de " +"sessionInfo()." + +#: assign.c:508 +#, c-format +msgid "" +"truelength (%d) is greater than 10,000 items over-allocated (length = %d). " +"See ?truelength. If you didn't set the datatable.alloccol option very large, " +"please report to data.table issue tracker including the result of " +"sessionInfo()." +msgstr "" +"truelength (%d) é maior que 10.000 itens superalocados (length = %d). " +"Consulte ?truelength. Se você não definiu a opção datatable.alloccol muito " +"grande, por favor, relate isso no rastreador de problemas do data.table " +"incluindo o resultado de sessionInfo()." + +#: assign.c:510 +#, c-format +msgid "" +"Internal error: DT passed to assign has not been allocated enough column " +"slots. l=%d, tl=%d, adding %d" +msgstr "" +"Erro interno: O DT passado para assign não recebeu slots de coluna " +"suficientes. l=%d, tl=%d, adicionando %d" + +#: assign.c:512 +msgid "" +"It appears that at some earlier point, names of this data.table have been " +"reassigned. Please ensure to use setnames() rather than names<- or " +"colnames<-. Otherwise, please report to data.table issue tracker." +msgstr "" +"Parece que em algum momento anterior, os nomes desta data.table foram " +"reatribuídos. Certifique-se de usar setnames() em vez de names<- ou " +"colnames<-. Caso contrário, por favor, relate isso no rastreador de " +"problemas do data.table" + +#: assign.c:517 +#, c-format +msgid "Internal error: selfrefnames is ok but tl names [%lld] != tl [%d]" +msgstr "" +"Erro interno: selfrefnames está certo, mas names de tl [%lld] != tl [%d]" + +#: assign.c:536 +msgid "" +"Internal error: earlier error 'When deleting columns, i should not be " +"provided' did not happen." +msgstr "" +"Erro interno: o erro anterior 'Ao excluir colunas, i não deve ser fornecido' " +"não ocorreu." + +#: assign.c:547 +#, c-format +msgid "" +"RHS for item %d has been duplicated because NAMED==%d MAYBE_SHARED==%d, but " +"then is being plonked. length(values)==%d; length(cols)==%d)\n" +msgstr "" +"O lado direito (RHS) para o item %d foi duplicado porque NAMED==%d " +"MAYBE_SHARED==%d, mas depois está sendo plonked. length(values)==%d; " +"length(cols)==%d)\n" + +#: assign.c:552 +#, c-format +msgid "Direct plonk of unnamed RHS, no copy. NAMED==%d, MAYBE_SHARED==%d\n" +msgstr "" +"Plonk direto de lado direito (RHS) sem nome, sem cópia. NAMED==%d, " +"MAYBE_SHARED==%d\n" + +#: assign.c:621 +#, c-format +msgid "" +"Dropping index '%s' as it doesn't have '__' at the beginning of its name. It " +"was very likely created by v1.9.4 of data.table.\n" +msgstr "" +"Descartando o índice '%s' porque ele não tem '__' no início do nome. Muito " +"provavelmente foi criado pela versão 1.9.4 do data.table.\n" + +#: assign.c:629 +msgid "Internal error: index name ends with trailing __" +msgstr "Erro interno: o nome do índice termina com __ à direita" + +#: assign.c:634 +msgid "Internal error: Couldn't allocate memory for s4." +msgstr "Erro interno: não foi possível alocar memória para s4." + +#: assign.c:645 +msgid "Internal error: Couldn't allocate memory for s5." +msgstr "Erro interno: não foi possível alocar memória para s5." + +#: assign.c:666 assign.c:682 +#, c-format +msgid "Dropping index '%s' due to an update on a key column\n" +msgstr "" +"Descartando o índice '%s' devido a uma atualização em uma coluna-chave\n" + +#: assign.c:675 +#, c-format +msgid "Shortening index '%s' to '%s' due to an update on a key column\n" +msgstr "" +"Reduzindo o índice '%s' para '%s' devido a uma atualização em uma coluna-" +"chave\n" + +#: assign.c:705 +#, c-format +msgid "" +"Internal error: %d column numbers to delete not now in strictly increasing " +"order. No-dups were checked earlier." +msgstr "" +"Erro interno: %d números de coluna a serem excluídos agora não estão em " +"ordem rigorosamente crescente. Verificação de não duplicata foi feita " +"anteriormente." + +#: assign.c:733 +#, c-format +msgid "target vector" +msgstr "vetor alvo" + +#: assign.c:733 +#, c-format +msgid "column %d named '%s'" +msgstr "coluna %d de nome '%s'" + +#: assign.c:749 +#, c-format +msgid "" +"Internal error memrecycle: sourceStart=%d sourceLen=%d length(source)=%d" +msgstr "" +"Erro interno de memrecycle: sourceStart=%d sourceLen=%d length(source)=%d" + +#: assign.c:751 +#, c-format +msgid "Internal error memrecycle: start=%d len=%d length(target)=%d" +msgstr "Erro interno de memrecycle: start=%d len=%d length(target)=%d" + +#: assign.c:754 +#, c-format +msgid "Internal error: recycle length error not caught earlier. slen=%d len=%d" +msgstr "" +"Erro interno: erro de comprimento de reciclagem não detectado anteriormente. " +"slen=%d len=%d" + +#: assign.c:758 +msgid "Internal error: memrecycle has received NULL colname" +msgstr "Erro interno: memrecycle recebeu nome de coluna NULL" + +#: assign.c:767 +#, c-format +msgid "" +"Cannot assign 'factor' to '%s'. Factors can only be assigned to factor, " +"character or list columns." +msgstr "" +"Não é possível atribuir 'factor' a '%s'. Os fatores só podem ser atribuídos " +"a colunas de fator, caractere ou lista." + +#: assign.c:781 +#, c-format +msgid "" +"Assigning factor numbers to %s. But %d is outside the level range [1,%d]" +msgstr "" +"Atribuindo números de fator a %s, mas %d está fora do intervalo de níveis [1," +"%d]" + +#: assign.c:790 +#, c-format +msgid "" +"Assigning factor numbers to %s. But %f is outside the level range [1,%d], or " +"is not a whole number." +msgstr "" +"Atribuindo números de fator a %s, mas %f está fora do intervalo de níveis [1," +"%d] ou não é de todo um número." + +#: assign.c:796 +#, c-format +msgid "" +"Cannot assign '%s' to 'factor'. Factor columns can be assigned factor, " +"character, NA in any type, or level numbers." +msgstr "" +"Não é possível atribuir '%s' e 'factor'. As colunas de fator podem receber a " +"atribuição de fator, caractere, NA em qualquer tipo ou números de nível." + +#: assign.c:817 +msgid "" +"Internal error: levels of target are either not unique or have truelength<0" +msgstr "" +"Erro interno: os níveis de destino não são exclusivos ou têm truelength<0" + +#: assign.c:856 +msgid "Unable to allocate working memory of %zu bytes to combine factor levels" +msgstr "" +"Não foi possível alocar memória de trabalho de %zu bytes para combinar " +"níveis de fator" + +#: assign.c:863 +msgid "Internal error: extra level check sum failed" +msgstr "Erro interno: falha na soma de verificação de nível extra" + +#: assign.c:882 +#, c-format +msgid "Coercing 'character' RHS to '%s' to match the type of %s." +msgstr "" +"Fazendo coerção de 'character' do lado direito (RHS) para '%s' para " +"corresponder ao tipo de %s." + +#: assign.c:889 +#, c-format +msgid "Cannot coerce 'list' RHS to 'integer64' to match the type of %s." +msgstr "" +"Não foi possível fazer coerção de 'list' do lado direito (RHS) para " +"'integer64' para corresponder ao tipo de %s." + +#: assign.c:894 +#, c-format +msgid "Coercing 'list' RHS to '%s' to match the type of %s." +msgstr "" +"Fazendo coerção de 'list' do lado direito (RHS) para '%s' para corresponder " +"ao tipo de %s." + +#: assign.c:899 +#, c-format +msgid "Zero-copy coerce when assigning '%s' to '%s' %s.\n" +msgstr "Fazendo coerção de zero cópia ao atribuir '%1$s' a %3$s '%2$s'.\n" + +#: assign.c:1001 +#, c-format +msgid "type '%s' cannot be coerced to '%s'" +msgstr "não é possível fazer coerção do tipo '%s' para '%s'" + +#: assign.c:1159 +#, c-format +msgid "Unsupported column type in assign.c:memrecycle '%s'" +msgstr "Sem suporte ao tipo de coluna em assign.c:memrecycle '%s'" + +#: assign.c:1213 +#, c-format +msgid "Internal error: writeNA passed a vector of type '%s'" +msgstr "Erro interno: writeNA recebeu um vetor do tipo '%s'" + +#: assign.c:1244 +#, c-format +msgid "" +"Internal error: savetl_init checks failed (%d %d %p %p). please report to " +"data.table issue tracker." +msgstr "" +"Erro interno: verificações de savetl_init falharam ( %d %d %p %p). Por " +"favor, relate isso no rastreador de problemas do data.table." + +#: assign.c:1252 +#, c-format +msgid "Failed to allocate initial %d items in savetl_init" +msgstr "Falha ao alocar %d itens iniciais em savetl_init" + +#: assign.c:1261 +#, c-format +msgid "" +"Internal error: reached maximum %d items for savetl. Please report to data." +"table issue tracker." +msgstr "" +"Erro interno: atingiu o máximo de %d itens para savetl. Por favor, relate " +"isso no rastreador de problemas do data.table." + +#: assign.c:1268 +#, c-format +msgid "Failed to realloc saveds to %d items in savetl" +msgstr "Falha ao realocar os saveds para %d itens no savetl" + +#: assign.c:1274 +#, c-format +msgid "Failed to realloc savedtl to %d items in savetl" +msgstr "Falha ao realocar os savedtl para %d itens no savetl" + +#: assign.c:1297 +msgid "x must be a character vector" +msgstr "x deve ser um vetor de caracteres" + +#: assign.c:1298 +msgid "'which' must be an integer vector" +msgstr "'which' deve ser um vetor de inteiros" + +#: assign.c:1299 +msgid "'new' must be a character vector" +msgstr "'new' deve ser um vetor de caracteres" + +#: assign.c:1300 +#, c-format +msgid "'new' is length %d. Should be the same as length of 'which' (%d)" +msgstr "" +"'new' tem comprimento %d. Deve ser igual ao comprimento de 'which' (%d)" + +#: assign.c:1303 +#, c-format +msgid "" +"Item %d of 'which' is %d which is outside range of the length %d character " +"vector" +msgstr "" +"Item %d de 'which' é %d, que está fora do intervalo do vetor de caracteres " +"de comprimento %d" + +#: between.c:12 +#, c-format +msgid "" +"Incompatible vector lengths: length(x)==%d length(lower)==%d " +"length(upper)==%d. Each should be either length 1 or the length of the " +"longest." +msgstr "" +"Comprimentos de vetores incompatíveis: length(x)==%d length(lower)==%d " +"length(upper)==%d. Cada um deve ter comprimento 1 ou o comprimento do mais " +"longo." + +#: between.c:19 +msgid "NAbounds must be TRUE or NA" +msgstr "NAbounds deve ser TRUE ou NA" + +#: between.c:64 +#, c-format +msgid "Item %d of lower (%d) is greater than item %d of upper (%d)" +msgstr "O item %d do lower (%d) é maior que o item %d do upper (%d)" + +#: between.c:82 +#, c-format +msgid "between parallel processing of integer took %8.3fs\n" +msgstr "processamento paralelo do between de inteiros levou %8.3fs\n" + +#: between.c:88 +msgid "x is integer64 but lower and/or upper are not." +msgstr "x é integer64, mas lower e/ou upper não são." + +#: between.c:95 +#, c-format +msgid "" +"Item %d of lower (%) is greater than item %d of upper (%)" +msgstr "" +"O item %d do lower (%) é maior que o item %d do upper (%)" + +#: between.c:112 +#, c-format +msgid "between parallel processing of integer64 took %8.3fs\n" +msgstr "processamento paralelo de between de integer64 levou %8.3fs\n" + +#: between.c:115 +msgid "" +"x is not integer64 but lower and/or upper is integer64. Please align classes." +msgstr "" +"x não é integer64, mas lower e/ou upper é integer64. Por favor, alinhe as " +"classes." + +#: between.c:122 +#, c-format +msgid "Item %d of lower (%f) is greater than item %d of upper (%f)" +msgstr "O item %d do lower (%f) é maior que o item %d do upper (%f)" + +#: between.c:140 +#, c-format +msgid "between parallel processing of double with open bounds took %8.3fs\n" +msgstr "" +"processamento paralelo de between de double com limites abertos levou " +"%8.3fs\n" + +#: between.c:157 +#, c-format +msgid "between parallel processing of double with closed bounds took %8.3fs\n" +msgstr "" +"processamento paralelo de between de double com limites fechados levou " +"%8.3fs\n" + +#: between.c:172 +#, c-format +msgid "Item %d of lower ('%s') is greater than item %d of upper ('%s')" +msgstr "O item %d do lower ('%s') é maior que o item %d do upper ('%s')" + +#: between.c:187 +#, c-format +msgid "between non-parallel processing of character took %8.3fs\n" +msgstr "processamento não paralelo de between de caractere levou %8.3fs\n" + +#: between.c:190 +#, c-format +msgid "" +"Internal error: between.c unsupported type '%s' should have been caught at R " +"level" +msgstr "" +"Erro interno: o tipo '%s' sem suporte no between.c deveria ter sido " +"detectado a nível de R" + +#: bmerge.c:51 +msgid "Internal error: icols is not integer vector" +msgstr "Erro interno: icols não é um vetor de inteiros" + +#: bmerge.c:52 +msgid "Internal error: xcols is not integer vector" +msgstr "Erro interno: xcols não é um vetor de inteiros" + +#: bmerge.c:54 +msgid "Internal error: icols and xcols must be non-empty integer vectors." +msgstr "Erro interno: icols e xcols devem ser vetores não vazios de inteiros" + +#: bmerge.c:55 +#, c-format +msgid "Internal error: length(icols) [%d] > length(xcols) [%d]" +msgstr "Erro interno: length(icols) [%d] > length(xcols) [%d]" + +#: bmerge.c:62 +#, c-format +msgid "Internal error. icols[%d] is NA" +msgstr "Erro interno. icols[%d] é NA" + +#: bmerge.c:63 +#, c-format +msgid "Internal error. xcols[%d] is NA" +msgstr "Erro interno. xcols[%d] é NA" + +#: bmerge.c:64 +#, c-format +msgid "icols[%d]=%d outside range [1,length(i)=%d]" +msgstr "icols[%d]=%d fora do intervalo [1,length(i)=%d]" + +#: bmerge.c:65 +#, c-format +msgid "xcols[%d]=%d outside range [1,length(x)=%d]" +msgstr "xcols[%d]=%d fora do intervalo [1,length(i)=%d]" + +#: bmerge.c:68 +#, c-format +msgid "typeof x.%s (%s) != typeof i.%s (%s)" +msgstr "typeof x.%s (%s) != typeof i.%s (%s)" + +#: bmerge.c:70 bmerge.c:380 +#, c-format +msgid "Type '%s' is not supported for joining/merging" +msgstr "Sem suporte ao tipo '%s' para junção/combinação" + +#: bmerge.c:76 +msgid "roll is character but not 'nearest'" +msgstr "roll é caractere, mas não é 'nearest'" + +#: bmerge.c:77 +msgid "roll='nearest' can't be applied to a character column, yet." +msgstr "roll='nearest' ainda não pode ser aplicado a uma coluna de caracteres." + +#: bmerge.c:80 +msgid "Internal error: roll is not character or double" +msgstr "Erro interno: roll não é caractere ou double" + +#: bmerge.c:85 +msgid "rollends must be a length 2 logical vector" +msgstr "rollends deve ser um vetor lógico de comprimento 2" + +#: bmerge.c:92 +msgid "Internal error: nomatchArg must be NULL or length-1 logical/integer" +msgstr "" +"Erro interno: nomatchArg deve ser NULL ou inteiro/lógico de comprimento 1" + +#: bmerge.c:95 +msgid "Internal error: nomatchArg must be NULL, NA, NA_integer_ or 0L" +msgstr "Erro interno: nomatchArg deve ser NULL, NA, NA_integer_ ou 0L" + +#: bmerge.c:102 uniqlist.c:273 +msgid "" +"Internal error: invalid value for 'mult'. please report to data.table issue " +"tracker" +msgstr "" +"Erro interno: valor inválido para 'mult'. Por favor, relate isso no " +"rastreador de problemas do data.table" + +#: bmerge.c:106 +msgid "" +"Internal error: opArg is not an integer vector of length equal to length(on)" +msgstr "" +"Erro interno: opArg não é um vetor de inteiros de comprimento igual a " +"length(on)" + +#: bmerge.c:111 +#, c-format +msgid "Internal error in bmerge_r for x.'%s'. Unrecognized value op[col]=%d" +msgstr "Erro interno em bmerge_r para x.'%s'. Valor não reconhecido op[col]=%d" + +#: bmerge.c:114 +msgid "Only '==' operator is supported for columns of type character." +msgstr "Só há suporte ao operador '==' para colunas do tipo caractere." + +#: bmerge.c:118 +msgid "Internal error: nqgrpArg must be an integer vector" +msgstr "Erro interno: nqgrpArg deve ser um vetor de inteiros" + +#: bmerge.c:124 +msgid "Internal error: nqmaxgrpArg is not a positive length-1 integer vector" +msgstr "" +"Erro interno: nqmaxgrpArg não é um vetor de inteiros positivos de " +"comprimento 1" + +#: bmerge.c:133 +msgid "Internal error in allocating memory for non-equi join" +msgstr "Erro interno na alocação de memória para junção não equivalente" + +#: bmerge.c:178 +msgid "Internal error: xoArg is not an integer vector" +msgstr "Erro interno: xoArg não é um vetor de inteiros" + +#: chmatch.c:5 +#, c-format +msgid "table is type '%s' (must be 'character' or NULL)" +msgstr "table é do tipo '%s' (deve ser 'character' ou NULL)" + +#: chmatch.c:7 +msgid "Internal error: either chin or chmatchdup should be true not both" +msgstr "Erro interno: chin ou chmatchdup devem ser verdadeiros, não ambos" + +#: chmatch.c:12 +#, c-format +msgid "Internal error: length of SYMSXP is %d not 1" +msgstr "Erro interno: o comprimento de SYMSXP é %d e não 1" + +#: chmatch.c:19 +#, c-format +msgid "x is type '%s' (must be 'character' or NULL)" +msgstr "x é do tipo '%s' (deve ser 'character' ou NULL)" + +#: chmatch.c:71 +#, c-format +msgid "" +"Internal error: CHARSXP '%s' has a negative truelength (%d). Please file an " +"issue on the data.table tracker." +msgstr "" +"Erro interno: CHARSXP '%s' tem truelength negativo (%d). Relate este " +"problema no rastreador de problemas do data.table." + +#: chmatch.c:104 +#, c-format +msgid "" +"Failed to allocate % bytes working memory in chmatchdup: " +"length(table)=%d length(unique(table))=%d" +msgstr "" +"Falha ao alocar % bytes de memória de trabalho em chmatchdup: " +"length(table)=%d length(unique(table))=%d" + +#: cj.c:89 +#, c-format +msgid "Type '%s' is not supported by CJ." +msgstr "Sem suporte ao tipo '%s' por CJ." + +#: coalesce.c:5 +msgid "Internal error in coalesce.c: input is list(...) at R level" +msgstr "Erro interno em coalesce.c: a entrada é list(...) no nível R" + +#: coalesce.c:7 +msgid "" +"Internal error in coalesce.c: argument 'inplaceArg' must be TRUE or FALSE" +msgstr "" +"Erro interno em coalesce.c: o argumento 'inplaceArg' deve ser TRUE ou FALSE" + +#: coalesce.c:16 +msgid "" +"The first argument is a list, data.table or data.frame. In this case there " +"should be no other arguments provided." +msgstr "" +"O primeiro argumento é uma lista, data.table ou data.frame. Neste caso, não " +"deve haver outros argumentos fornecidos." + +#: coalesce.c:32 +#, c-format +msgid "" +"Item 1 is a factor but item %d is not a factor. When factors are involved, " +"all items must be factor." +msgstr "" +"O item 1 é um fator, mas o item %d não é. Quando fatores estão envolvidos, " +"todos os itens devem ser fatores." + +#: coalesce.c:34 +#, c-format +msgid "" +"Item %d is a factor but its levels are not identical to the first item's " +"levels." +msgstr "" +"O item %d é um fator, mas seus níveis não são idênticos aos níveis do " +"primeiro item." + +#: coalesce.c:38 +#, c-format +msgid "" +"Item %d is a factor but item 1 is not a factor. When factors are involved, " +"all items must be factor." +msgstr "" +"O item %d é um fator, mas o item 1 não é. Quando fatores estão envolvidos, " +"todos os itens devem ser fatores." + +#: coalesce.c:41 +#, c-format +msgid "" +"Item %d is type %s but the first item is type %s. Please coerce before " +"coalescing." +msgstr "" +"O item %d é do tipo %s, mas o primeiro item é do tipo %s. Por favor, faça " +"coerção antes de coalescer." + +#: coalesce.c:43 +#, c-format +msgid "Item %d has a different class than item 1." +msgstr "O item %d tem uma classe diferente do item 1." + +#: coalesce.c:46 +#, c-format +msgid "" +"Item %d is length %d but the first item is length %d. Only singletons are " +"recycled." +msgstr "" +"O item %d tem comprimento %d, mas o primeiro item tem comprimento %d. Apenas " +"singletons são reciclados." + +#: coalesce.c:50 +msgid "coalesce copied first item (inplace=FALSE)\n" +msgstr "coalesce copiou o primeiro item (inplace=FALSE)\n" + +#: coalesce.c:166 fifelse.c:193 fifelse.c:391 shift.c:171 uniqlist.c:98 +#: uniqlist.c:130 uniqlist.c:211 uniqlist.c:248 uniqlist.c:321 +#, c-format +msgid "Type '%s' is not supported" +msgstr "Sem suporte ao tipo '%s'" + +#: dogroups.c:75 +msgid "Internal error: order not integer vector" +msgstr "Erro interno: 'order' não é vetor de inteiros" + +#: dogroups.c:76 +msgid "Internal error: starts not integer" +msgstr "Erro interno: 'starts' não é inteiro" + +#: dogroups.c:77 +msgid "Internal error: lens not integer" +msgstr "Erro interno: 'lens' não é vetor de inteiros" + +#: dogroups.c:79 +msgid "Internal error: jiscols not NULL but o__ has length" +msgstr "Erro interno: jiscols não é NULL, mas o__ tem comprimento" + +#: dogroups.c:80 +msgid "Internal error: xjiscols not NULL but o__ has length" +msgstr "Erro interno: xjiscols não é NULL, mas o__ tem comprimento" + +#: dogroups.c:81 gsumm.c:43 +msgid "env is not an environment" +msgstr "env não é um ambiente" + +#: dogroups.c:100 +#, c-format +msgid "" +"Internal error: unsupported size-0 type '%s' in column %d of 'by' should " +"have been caught earlier" +msgstr "" +"Erro interno: o tipo não suportado '%s' de tamanho 0 na coluna %d de 'by' " +"deveria ter sido detectado anteriormente" + +#: dogroups.c:105 +#, c-format +msgid "!length(bynames)[%d]==length(groups)[%d]==length(grpcols)[%d]" +msgstr "!length(bynames)[%d]==length(groups)[%d]==length(grpcols)[%d]" + +#: dogroups.c:127 +msgid "row.names attribute of .SD not found" +msgstr "atributo row.names de .SD não encontrado" + +#: dogroups.c:129 +#, c-format +msgid "" +"row.names of .SD isn't integer length 2 with NA as first item; i.e., ." +"set_row_names(). [%s %d %d]" +msgstr "" +"row.names de .SD não é um inteiro de comprimento 2 com NA como primeiro " +"item, ou seja, .set_row_names(). [%s %d %d]" + +#: dogroups.c:134 +msgid "length(names)!=length(SD)" +msgstr "length(names)!=length(SD)" + +#: dogroups.c:140 +#, c-format +msgid "" +"Internal error: size-0 type %d in .SD column %d should have been caught " +"earlier" +msgstr "" +"Erro interno: tipo %d de tamanho 0 na coluna %d de .SD deveria ter sido " +"detectado antes" + +#: dogroups.c:142 +#, c-format +msgid "Internal error: SDall %d length = %d != %d" +msgstr "Erro interno: SDall %d comprimento = %d != %d" + +#: dogroups.c:150 +msgid "length(xknames)!=length(xSD)" +msgstr "length(xknames)!=length(xSD)" + +#: dogroups.c:154 +#, c-format +msgid "" +"Internal error: type %d in .xSD column %d should have been caught by now" +msgstr "" +"Erro interno: tipo %d na coluna %d de .xSD já deveria ter sido detectado" + +#: dogroups.c:158 +#, c-format +msgid "length(iSD)[%d] != length(jiscols)[%d]" +msgstr "length(iSD)[%d] != length(jiscols)[%d]" + +#: dogroups.c:159 +#, c-format +msgid "length(xSD)[%d] != length(xjiscols)[%d]" +msgstr "length(xSD)[%d] != length(xjiscols)[%d]" + +#: dogroups.c:271 +#, c-format +msgid "j evaluates to type '%s'. Must evaluate to atomic vector or list." +msgstr "" +"j é avaliado para o tipo '%s'. Deve ser avaliado para vetor atômico ou lista." + +#: dogroups.c:280 +#, c-format +msgid "" +"Entry %d for group %d in j=list(...) should be atomic vector or list. If you " +"are trying something like j=list(.SD,newcol=mean(colA)) then use := by group " +"instead (much quicker), or cbind or merge afterwards." +msgstr "" +"Entrada %d para grupo %d em j=list(...) deveria ser um vetor atômico ou " +"lista. Se você está tentando algo como j=list(.SD,novacol=mean(colA)) então " +"use := por grupo em vez disso (muito mais rápido), ou cbind ou merge a " +"seguir." + +#: dogroups.c:287 +#, c-format +msgid "" +"Entry %d for group %d in j=list(...) is an array with %d dimensions > 1, " +"which is disallowed. \"Break\" the array yourself with c() or as.vector() if " +"that is intentional." +msgstr "" +"Entrada %d para grupo %d em j=list(...) é uma array com %d dimensões > 1, o " +"que não é permitido. \"Quebre\" a array por conta própria com c() ou as." +"vector() se isso for intencional." + +#: dogroups.c:297 +msgid "" +"RHS of := is NULL during grouped assignment, but it's not possible to delete " +"parts of a column." +msgstr "" +"O lado direito (RHS) de := é NULL durante a atribuição agrupada, mas não é " +"possível excluir partes de uma coluna." + +#: dogroups.c:301 +#, c-format +msgid "" +"Supplied %d items to be assigned to group %d of size %d in column '%s'. The " +"RHS length must either be 1 (single values are ok) or match the LHS length " +"exactly. If you wish to 'recycle' the RHS please use rep() explicitly to " +"make this intent clear to readers of your code." +msgstr "" +"Foram fornecidos %d itens a serem atribuídos ao grupo %d de tamanho %d na " +"coluna '%s'. O comprimento do lado direito (RHS) deve ser 1 (valores únicos " +"são aceitáveis) ou corresponder exatamente ao comprimento do lado esquerdo " +"(LHS). Se você deseja \"reciclar\" o lado direito (RHS), use rep() " +"explicitamente para deixar essa intenção clara para os leitores do seu " +"código." + +#: dogroups.c:312 +msgid "" +"Internal error: Trying to add new column by reference but tl is full; " +"setalloccol should have run first at R level before getting to this point in " +"dogroups" +msgstr "" +"Erro interno: Tentando adicionar nova coluna por referência, mas tl está " +"cheio; setalloccol deveria ter sido executado primeiro no nível R antes de " +"chegar a este ponto em dogroups" + +#: dogroups.c:333 +#, c-format +msgid "Group %d column '%s': %s" +msgstr "Grupo %d coluna '%s': %s" + +#: dogroups.c:340 +msgid "j doesn't evaluate to the same number of columns for each group" +msgstr "j não é avaliado para o mesmo número de colunas para cada grupo" + +#: dogroups.c:374 +#, c-format +msgid "" +"Column %d of j's result for the first group is NULL. We rely on the column " +"types of the first result to decide the type expected for the remaining " +"groups (and require consistency). NULL columns are acceptable for later " +"groups (and those are replaced with NA of appropriate type and recycled) but " +"not for the first. Please use a typed empty vector instead, such as " +"integer() or numeric()." +msgstr "" +"A coluna %d do resultado de j para o primeiro grupo é NULL. Contamos com os " +"tipos de coluna do primeiro resultado para decidir o tipo esperado para os " +"grupos restantes (e exigir consistência). Colunas NULL são aceitáveis ​​para " +"grupos posteriores (e são substituídas por NA do tipo apropriado e " +"recicladas), mas não para o primeiro. Em vez disso, use um vetor vazio " +"tipado, como integer() ou numeric()." + +#: dogroups.c:377 +msgid "" +"j appears to be a named vector. The same names will likely be created over " +"and over again for each group and slow things down. Try and pass a named " +"list (which data.table optimizes) or an unnamed list() instead.\n" +msgstr "" +"j parece ser um vetor nomeado. Os mesmos nomes provavelmente serão criados " +"repetidamente para cada grupo e tornarão as coisas mais lentas. Tente passar " +"uma lista nomeada (que data.table otimiza) ou uma sem nome usando list().\n" + +#: dogroups.c:379 +#, c-format +msgid "" +"Column %d of j is a named vector (each item down the rows is named, " +"somehow). Please remove those names for efficiency (to save creating them " +"over and over for each group). They are ignored anyway.\n" +msgstr "" +"A coluna %d de j é um vetor nomeado (cada item nas linhas é nomeado, de " +"alguma forma). Por favor, remova esses nomes para maior eficiência (para " +"evitar criá-los repetidamente para cada grupo). Eles são ignorados de " +"qualquer maneira.\n" + +#: dogroups.c:387 +msgid "" +"The result of j is a named list. It's very inefficient to create the same " +"names over and over again for each group. When j=list(...), any names are " +"detected, removed and put back after grouping has completed, for efficiency. " +"Using j=transform(), for example, prevents that speedup (consider changing " +"to :=). This message may be upgraded to warning in future.\n" +msgstr "" +"O resultado de j é uma lista nomeada. É muito ineficiente criar os mesmos " +"nomes repetidamente para cada grupo. Quando j=list(...), quaisquer nomes são " +"detectados, removidos e recolocados após a conclusão do agrupamento, para " +"maior eficiência. Usar j=transform(), por exemplo, evita essa aceleração " +"(considere mudar para :=). Esta mensagem pode ser atualizada para aviso no " +"futuro.\n" + +#: dogroups.c:399 +#, c-format +msgid "dogroups: growing from %d to %d rows\n" +msgstr "dogroups: crescendo de %d para %d linhas\n" + +#: dogroups.c:400 +#, c-format +msgid "dogroups: length(ans)[%d]!=ngrpcols[%d]+njval[%d]" +msgstr "dogroups: length(ans)[%d]!=ngrpcols[%d]+njval[%d]" + +#: dogroups.c:418 +#, c-format +msgid "" +"Item %d of j's result for group %d is zero length. This will be filled with " +"%d NAs to match the longest column in this result. Later groups may have a " +"similar problem but only the first is reported to save filling the warning " +"buffer." +msgstr "" +"O item %d do resultado de j para o grupo %d tem comprimento zero. Será " +"preenchido com %d NAs para corresponder à coluna mais longa deste resultado. " +"Os grupos posteriores podem ter um problema semelhante, mas apenas o " +"primeiro é relatado para salvar o preenchimento do buffer de avisos." + +#: dogroups.c:425 +#, c-format +msgid "" +"Column %d of result for group %d is type '%s' but expecting type '%s'. " +"Column types must be consistent for each group." +msgstr "" +"A coluna %d do resultado do grupo %d é do tipo '%s', mas espera o tipo '%s'. " +"Os tipos de coluna devem ser consistentes para cada grupo." + +#: dogroups.c:427 +#, c-format +msgid "" +"Supplied %d items for column %d of group %d which has %d rows. The RHS " +"length must either be 1 (single values are ok) or match the LHS length " +"exactly. If you wish to 'recycle' the RHS please use rep() explicitly to " +"make this intent clear to readers of your code." +msgstr "" +"Foram fornecidos %d itens para a coluna %d do grupo %d que possui %d linhas. " +"O comprimento do lado direito (RHS) deve ser 1 (valores únicos são " +"aceitáveis) ou corresponder exatamente ao comprimento do lado esquerdo " +"(LHS). Se você deseja \"reciclar\" o lado direito (RHS), use rep() " +"explicitamente para deixar essa intenção clara para os leitores do seu " +"código." + +#: dogroups.c:448 +#, c-format +msgid "Wrote less rows (%d) than allocated (%d).\n" +msgstr "Foram escritas menos linhas (%d) do que alocadas (%d).\n" + +#: dogroups.c:470 +#, c-format +msgid "Internal error: block 0 [%d] and block 1 [%d] have both run" +msgstr "Erro interno: bloco 0 [%d] e bloco 1 [%d] foram ambos executados" + +#: dogroups.c:472 +#, c-format +msgid "" +"\n" +" %s took %.3fs for %d groups\n" +msgstr "" +"\n" +" %s levou %.3fs para %d grupos\n" + +#: dogroups.c:474 +#, c-format +msgid " eval(j) took %.3fs for %d calls\n" +msgstr " eval(j) levou %.3fs para %d chamadas\n" + +#: dogroups.c:498 +msgid "growVector passed NULL" +msgstr "growVector recebeu NULL" + +#: dogroups.c:518 +#, c-format +msgid "Internal error: growVector doesn't support type '%s'" +msgstr "Erro interno: growVector não oferece suporte ao tipo '%s'" + +#: fastmean.c:39 rbindlist.c:8 +#, c-format +msgid "%s should be TRUE or FALSE" +msgstr "%s deveria ser TRUE ou FALSE" + +#: fastmean.c:45 +#, c-format +msgid "fastmean was passed type %s, not numeric or logical" +msgstr "fastmean recebeu o tipo %s, não numérico ou lógico" + +#: fastmean.c:83 fastmean.c:111 +#, c-format +msgid "Internal error: type '%s' not caught earlier in fastmean" +msgstr "Erro interno: tipo '%s' não capturado mais cedo no fastmean" + +#: fcast.c:101 +#, c-format +msgid "Unsupported column type in fcast val: '%s'" +msgstr "Sem suporte ao tipo de coluna em 'val' de fcast: '%s'" + +#: fifelse.c:5 +msgid "Argument 'test' must be logical." +msgstr "Argumento 'test'deve ser lógico." + +#: fifelse.c:9 +msgid "S4 class objects (except nanotime) are not supported." +msgstr "Sem suporte a objetos de classe S4 (exceto nanotime)." + +#: fifelse.c:24 +#, c-format +msgid "" +"Length of 'yes' is % but must be 1 or length of 'test' (%)." +msgstr "" +"Comprimento de 'yes' é % mas deve ser 1 ou o comprimento de 'test' " +"(%)" + +#: fifelse.c:26 +#, c-format +msgid "" +"Length of 'no' is % but must be 1 or length of 'test' (%)." +msgstr "" +"Comprimento de 'no' é % mas deve ser 1 ou o comprimento de 'test' " +"(%)." + +#: fifelse.c:28 +#, c-format +msgid "" +"Length of 'na' is % but must be 1 or length of 'test' (%)." +msgstr "" +"Comprimento de 'na' é % mas deve ser 1 ou o comprimento de 'test' " +"(%)." + +#: fifelse.c:46 +#, c-format +msgid "" +"'no' is of type %s but '%s' is %s. Please make all arguments have the same " +"type." +msgstr "" +"'no' é do tipo %s mas '%s' é %s. Favor garantir que todos os argumentos " +"tenham o mesmo tipo." + +#: fifelse.c:52 +#, c-format +msgid "" +"'na' is of type %s but '%s' is %s. Please make all arguments have the same " +"type." +msgstr "" +"'na' é do tupo %s mas '%s' é %s. Favor garantir que todos os argumentos " +"tenham o mesmo tipo." + +#: fifelse.c:57 +msgid "" +"'yes' has different class than 'no'. Please make sure that both arguments " +"have the same class." +msgstr "" +"'yes' tem classes diferentes que 'no'. Favor garantir que ambos os " +"argumentos tenham a mesma classe." + +#: fifelse.c:62 +msgid "" +"'yes' has different class than 'na'. Please make sure that both arguments " +"have the same class." +msgstr "" +"'yes' tem classe diferente de 'na'. Favor garantir que ambos os argumentos " +"tenham a mesma classe." + +#: fifelse.c:67 +msgid "" +"'no' has different class than 'na'. Please make sure that both arguments " +"have the same class." +msgstr "" +"'no' tem classe diferente de 'na'. Favor garantir que ambos os argumentos " +"tenham a mesma classe." + +#: fifelse.c:74 +msgid "'yes' and 'no' are both type factor but their levels are different." +msgstr "'yes' e 'no' são ambos do tipo fator mas seus níveis são diferentes." + +#: fifelse.c:79 +msgid "'yes' and 'na' are both type factor but their levels are different." +msgstr "'yes' e 'na' são ambos do tipo fator mas seus níveis são diferentes." + +#: fifelse.c:84 +msgid "'no' and 'na' are both type factor but their levels are different." +msgstr "'no' e 'na' são ambos do tipo fator mas seus níveis são diferentes." + +#: fifelse.c:207 +#, c-format +msgid "" +"Received %d inputs; please supply an even number of arguments in ..., " +"consisting of logical condition, resulting value pairs (in that order). Note " +"that the default argument must be named explicitly, e.g., default=0" +msgstr "" +"%d entradas recebidas; favor fornecer um número par de argumentos em ..., " +"consistindo pares de condição lógica e valor resultante (nessa ordem). Note " +"que o argumento padrão deve ser nomeado explicitamente, p.ex., default=0" + +#: fifelse.c:218 fifelse.c:258 +msgid "" +"S4 class objects (except nanotime) are not supported. Please see https://" +"github.com/Rdatatable/data.table/issues/4131." +msgstr "" +"Sem suporte a objetos de classe S4 (exceto nanotime). Favor ver https://" +"github.com/Rdatatable/data.table/issues/4131." + +#: fifelse.c:229 +msgid "Length of 'default' must be 1." +msgstr "Comprimento de 'default' deve ser 1." + +#: fifelse.c:236 +#, c-format +msgid "" +"Resulting value is of type %s but 'default' is of type %s. Please make sure " +"that both arguments have the same type." +msgstr "" +"Valor resultante é do tipo %s mas 'default' é do tipo %s. Favor garantir que " +"ambos os argumentos tenham o mesmo tipo." + +#: fifelse.c:240 +msgid "" +"Resulting value has different class than 'default'. Please make sure that " +"both arguments have the same class." +msgstr "" +"Valores resultantes têm classe diferente de 'default'. Favor garantir que " +"ambos os argumentos tenham a mesma classe." + +#: fifelse.c:246 +msgid "" +"Resulting value and 'default' are both type factor but their levels are " +"different." +msgstr "" +"Valor resultante e 'default' são ambos do tipo fator mas seus níveis são " +"diferentes." + +#: fifelse.c:261 +#, c-format +msgid "Argument #%d must be logical." +msgstr "Argumento #%d deve ser lógico." + +#: fifelse.c:265 +#, c-format +msgid "" +"Argument #%d has a different length than argument #1. Please make sure all " +"logical conditions have the same length." +msgstr "" +"Argumento #%d tem um comprimento diferente do argumento #1. Favor garantir " +"que todas as condições lógicas tenham o mesmo comprimento." + +#: fifelse.c:270 +#, c-format +msgid "" +"Argument #%d is of type %s, however argument #2 is of type %s. Please make " +"sure all output values have the same type." +msgstr "" +"Argumento #%d é do tipo %s, mas argumento #2 é do tipo %s. Favor garantir " +"que todos os valores de saída sejam do mesmo tipo." + +#: fifelse.c:275 +#, c-format +msgid "" +"Argument #%d has different class than argument #2, Please make sure all " +"output values have the same class." +msgstr "" +"Argumento #%d tem classe diferente do argumento #2. Favor garantir que todos " +"os valores de saída tenham a mesma classe." + +#: fifelse.c:281 +#, c-format +msgid "" +"Argument #2 and argument #%d are both factor but their levels are different." +msgstr "" +"Argumento #2 e argumento #%d são ambos fatores mas seus níveis são diferentes" + +#: fifelse.c:288 +#, c-format +msgid "" +"Length of output value #%d must either be 1 or length of logical condition." +msgstr "" +"O comprimento do valor de saída #%d deve ser 1 ou o comprimento da " +"comprimento da condição lógica." + +#: fmelt.c:18 +msgid "'x' must be an integer" +msgstr "'x' deve ser um inteiro" + +#: fmelt.c:19 +msgid "'n' must be a positive integer" +msgstr "'n' deve ser um inteiro positivo" + +#: fmelt.c:41 +msgid "Argument to 'which' must be logical" +msgstr "Argumento para 'which' precisa ser lógico" + +#: fmelt.c:65 +msgid "concat: 'vec' must be a character vector" +msgstr "concat: 'vec' deve ser um vetor de caracteres" + +#: fmelt.c:66 +msgid "concat: 'idx' must be an integer vector of length >= 0" +msgstr "concat: 'idx' deve ser um vetor de inteiros com comprimento >= 0" + +#: fmelt.c:75 +#, c-format +msgid "" +"Internal error in concat: 'idx' must take values between 1 and length(vec); " +"1 <= idx <= %d" +msgstr "" +"Erro interno em concat: 'idx' deve obter valores entre 1 e length(vec); 1 <= " +"idx <= %d" + +#: fmelt.c:134 +#, c-format +msgid "Unknown 'measure.vars' type %s at index %d of list" +msgstr "'measure.vars'com tipo desconhecido %s no índice %d da lista" + +#: fmelt.c:187 +msgid "One or more values in 'measure.vars' is invalid." +msgstr "Um ou mais valores em 'measure.vars' são inválidos." + +#: fmelt.c:189 +msgid "One or more values in 'id.vars' is invalid." +msgstr "Um ou mais valores em 'id.vars' são inválidos." + +#: fmelt.c:212 +#, c-format +msgid "" +"Unknown 'measure.vars' type %s, must be character or integer vector/list" +msgstr "" +"'measure.vars' com tipo desconhecido %s, deve ser vetor/lista de caracteres " +"ou inteiros" + +#: fmelt.c:214 +#, c-format +msgid "Unknown 'id.vars' type %s, must be character or integer vector" +msgstr "" +"'id.vars' de tipo desconhecido %s, deve ser vetor de caracteres ou inteiros" + +#: fmelt.c:239 +#, c-format +msgid "" +"id.vars and measure.vars are internally guessed when both are 'NULL'. All " +"non-numeric/integer/logical type columns are considered id.vars, which in " +"this case are columns [%s]. Consider providing at least one of 'id' or " +"'measure' vars in future." +msgstr "" +"id.vars e measure.vars são adivinhadas internamente quando ambas são 'NULL'. " +"Todas as colunas de tipo não numérico/inteiro/lógico são consideradas id." +"vars, o que nesse caso são as colunas [%s]. Considere fornecer ao menos " +"argumento dentre id.vars and measure.vars no futuro." + +#: fmelt.c:245 +msgid "" +"'measure.vars' is missing. Assigning all columns other than 'id.vars' " +"columns as 'measure.vars'.\n" +msgstr "" +"'measure.vars' está faltando. Atribuindo para 'measure.vars' todas as " +"colunas que não estão em 'id.vars'.\n" + +#: fmelt.c:247 +#, c-format +msgid "Assigned 'measure.vars' are [%s].\n" +msgstr "'measure.vars' atribuídas são [%s].\n" + +#: fmelt.c:258 +msgid "" +"'id.vars' is missing. Assigning all columns other than 'measure.vars' " +"columns as 'id.vars'.\n" +msgstr "" +"'id.vars' está faltando. Atribuindo todas as colunas como 'id.vars' exceto " +"aquelas em 'measure.vars'.\n" + +#: fmelt.c:259 +#, c-format +msgid "Assigned 'id.vars' are [%s].\n" +msgstr "'id.vars' atribuídas são [%s].\n" + +#: fmelt.c:313 +msgid "" +"When 'measure.vars' is a list, 'value.name' must be a character vector of " +"length =1 or =length(measure.vars)." +msgstr "" +"Quando 'measure.vars' é uma lista, 'value.name' deve ser um vetor de " +"caracteres de comprimento =1 ou =length(measure.vars)." + +#: fmelt.c:314 +msgid "" +"When 'measure.vars' is either not specified or a character/integer vector, " +"'value.name' must be a character vector of length =1." +msgstr "" +"Quando 'measure.vars' ou não está especificada ou é um vetor de caracteres/" +"inteiros, 'value.name' deve ser um vetor de caracteres de comprimento =1." + +#: fmelt.c:317 +msgid "'variable.name' must be a character/integer vector of length 1." +msgstr "" +"'variable.name' deve ser um vetor de caracteres/inteiros de comprimento 1." + +#: fmelt.c:370 +msgid "" +"variable_table attribute of measure.vars should be a data table with at " +"least one column" +msgstr "" +"atributo variable_table de measure.vars deveria ser uma data.table com ao " +"menos uma coluna" + +#: fmelt.c:375 +#, c-format +msgid "" +"variable_table attribute of measure.vars should be a data table with same " +"number of rows as max length of measure.vars vectors =%d" +msgstr "" +"atributo variable_table de measure.vars deveria ser uma data.table com o " +"mesmo número de linhas que o comprimento máximo dos vetores measure.vars = %d" + +#: fmelt.c:379 +msgid "" +"variable_table attribute of measure.vars should be either NULL or a data " +"table" +msgstr "" +"atributo variable_table de measure.vars deveria ser ou NULL ou uma data.table" + +#: fmelt.c:396 +msgid "" +"Internal error: combineFactorLevels in fmelt.c expects all-character input" +msgstr "" +"Erro interno: combineFactorLevels em fmelt.c espera entrada inteiramente de " +"caracteres" + +#: fmelt.c:399 +msgid "" +"Internal error: combineFactorLevels in fmelt.c expects a character target to " +"factorize" +msgstr "" +"Erro interno: combineFactorLevels em fmelt.c espera alvo de caracteres para " +"fatorizar" + +#: fmelt.c:462 +#, c-format +msgid "" +"'measure.vars' [%s] are not all of the same type. By order of hierarchy, the " +"molten data value column will be of type '%s'. All measure variables not of " +"type '%s' will be coerced too. Check DETAILS in ?melt.data.table for more on " +"coercion.\n" +msgstr "" +"'measure.vars' [%s] não são todas do mesmo tipo. Por ordem de hierarquia, a " +"coluna de valores dos dados resultantes será do tipo '%s'. Será feita " +"coerção de todas as variáveis que não já forem do tipo '%s'. Verifique os " +"detalhes (DETAILS) em ?melt.data.table para mais sobre coerção.\n" + +#: fmelt.c:574 +#, c-format +msgid "Unknown column type '%s' for column '%s'." +msgstr "Tipo de coluna desconhecido '%s' para coluna '%s'." + +#: fmelt.c:595 +#, c-format +msgid "Internal error: fmelt.c:getvarcols %d %d" +msgstr "Erro interno: fmelt.c:getvarcols %d %d" + +#: fmelt.c:681 +#, c-format +msgid "variable_table does not support column type '%s' for column '%s'." +msgstr "" +"variable_table não tem suporte o tipo de coluna '%s' para a coluna '%s'." + +#: fmelt.c:775 +#, c-format +msgid "Unknown column type '%s' for column '%s' in 'data'" +msgstr "Tipo de coluna '%s' desconhecido para a coluna '%s' em 'data'" + +#: fmelt.c:786 +msgid "Input is not of type VECSXP, expected a data.table, data.frame or list" +msgstr "" +"Entrada não é do tipo VECSXP, esperava-se uma data.table, data.frame ou lista" + +#: fmelt.c:787 +msgid "Argument 'value.factor' should be logical TRUE/FALSE" +msgstr "Argumento 'value.factor' deveria ser lógico TRUE/FALSE" + +#: fmelt.c:788 +msgid "Argument 'variable.factor' should be logical TRUE/FALSE" +msgstr "Argumento 'variable.factor' deveria ser lógico TRUE/FALSE" + +#: fmelt.c:789 +msgid "Argument 'na.rm' should be logical TRUE/FALSE." +msgstr "Argumento 'na.rm' deveria ser lógico TRUE/FALSE." + +#: fmelt.c:790 +msgid "Argument 'variable.name' must be a character vector" +msgstr "Argumento 'variable.name' deve ser um vetor de caracteres" + +#: fmelt.c:791 +msgid "Argument 'value.name' must be a character vector" +msgstr "Argumento 'value.name' deve ser um vetor de caracteres" + +#: fmelt.c:792 +msgid "Argument 'verbose' should be logical TRUE/FALSE" +msgstr "Argumento 'verbose' deveria ser lógico TRUE/FALSE" + +#: fmelt.c:796 +msgid "ncol(data) is 0. Nothing to melt. Returning original data.table." +msgstr "ncol(data) é 0. Nada para processar. Retornando a data.table original." + +#: fmelt.c:801 +msgid "names(data) is NULL. Please report to data.table-help" +msgstr "names(data) é NULL. Favor relatar para data.table-help" + +#: forder.c:107 +#, c-format +msgid "Failed to realloc thread private group size buffer to %d*4bytes" +msgstr "" +"Falha ao realocar o buffer privado de tamanho de grupo da thread para " +"%d*4bytes" + +#: forder.c:121 +#, c-format +msgid "Failed to realloc group size result to %d*4bytes" +msgstr "Falha ao realocar o resultado de tamanho de grupo para %d*4bytes" + +#: forder.c:255 +#, c-format +msgid "" +"Logical error. counts[0]=%d in cradix but should have been decremented to 0. " +"radix=%d" +msgstr "" +"Erro lógico. counts[0]=%d em cradix, mas deveria ter sido decrementado para " +"0. radix=%d" + +#: forder.c:270 +msgid "Failed to alloc cradix_counts" +msgstr "Falha ao alocar cradix_counts" + +#: forder.c:272 +msgid "Failed to alloc cradix_tmp" +msgstr "Falha ao alocar cradix_tmp" + +#: forder.c:283 +#, c-format +msgid "" +"Internal error: ustr isn't empty when starting range_str: ustr_n=%d, " +"ustr_alloc=%d" +msgstr "" +"Erro interno: o ustr não está vazio ao iniciar range_str: ustr_n=%d, " +"ustr_alloc=%d" + +#: forder.c:284 +msgid "Internal error: ustr_maxlen isn't 0 when starting range_str" +msgstr "Erro interno: ustr_maxlen não é 0 ao iniciar range_str" + +#: forder.c:304 +#, c-format +msgid "Unable to realloc %d * %d bytes in range_str" +msgstr "Não foi possível realocar %d * %d bytes em range_str" + +#: forder.c:322 +msgid "Failed to alloc ustr3 when converting strings to UTF8" +msgstr "Falha ao alocar ustr3 ao converter strings para UTF8" + +#: forder.c:340 +msgid "Failed to alloc tl when converting strings to UTF8" +msgstr "Falha ao alocar tl ao converter strings para UTF8" + +#: forder.c:369 +msgid "Must an integer or numeric vector length 1" +msgstr "Deve um vetor inteiro ou numérico de comprimento 1" + +#: forder.c:370 +msgid "Must be 2, 1 or 0" +msgstr "Deve ser 2, 1 ou 0" + +#: forder.c:405 +msgid "Unknown non-finite value; not NA, NaN, -Inf or +Inf" +msgstr "Valor não finito desconhecido; não é NA, NaN, -Inf ou +Inf" + +#: forder.c:427 +msgid "" +"Internal error: input is not either a list of columns, or an atomic vector." +msgstr "" +"Erro interno: a entrada não é uma lista de colunas nem um vetor atômico." + +#: forder.c:429 +msgid "" +"Internal error: input is an atomic vector (not a list of columns) but by= is " +"not NULL" +msgstr "" +"Erro interno: a entrada é um vetor atômico (não uma lista de colunas), mas " +"by= não é NULL" + +#: forder.c:431 +msgid "" +"Input is an atomic vector (not a list of columns) but order= is not a length " +"1 integer" +msgstr "" +"A entrada é um vetor atômico (não uma lista de colunas), mas order= não é um " +"número inteiro de comprimento 1" + +#: forder.c:433 +#, c-format +msgid "forder.c received a vector type '%s' length %d\n" +msgstr "forder.c recebeu um tipo de vetor '%s' comprimento %d\n" + +#: forder.c:441 +#, c-format +msgid "forder.c received %d rows and %d columns\n" +msgstr "forder.c recebeu %d linhas e %d colunas\n" + +#: forder.c:444 +msgid "Internal error: DT is an empty list() of 0 columns" +msgstr "Erro interno: DT é um list() vazio de 0 colunas" + +#: forder.c:446 +#, c-format +msgid "" +"Internal error: DT has %d columns but 'by' is either not integer or is " +"length 0" +msgstr "" +"Erro interno: DT tem %d colunas, mas 'by' não é inteiro ou tem comprimento 0" + +#: forder.c:448 +#, c-format +msgid "" +"Either order= is not integer or its length (%d) is different to by='s length " +"(%d)" +msgstr "" +"Ou order= não é inteiro ou seu comprimento (%d) é diferente do comprimento " +"de by= (%d)" + +#: forder.c:454 +#, c-format +msgid "internal error: 'by' value %d out of range [1,%d]" +msgstr "erro interno: valor 'by' %d fora do intervalo [1,%d]" + +#: forder.c:456 +#, c-format +msgid "" +"Column %d is length %d which differs from length of column 1 (%d), are you " +"attempting to order by a list column?\n" +msgstr "" +"A coluna %d tem comprimento %d que difere do comprimento da coluna 1 (%d). " +"Você está tentando ordenar por uma coluna de lista?\n" + +#: forder.c:466 +msgid "At least one of retGrp= or sort= must be TRUE" +msgstr "Pelo menos um de retGrp= ou sort= deve ser TRUE" + +#: forder.c:468 +msgid "na.last must be logical TRUE, FALSE or NA of length 1" +msgstr "na.last deve ser lógico TRUE, FALSE ou NA de comprimento 1" + +#: forder.c:496 forder.c:600 +#, c-format +msgid "Unable to allocate % bytes of working memory" +msgstr "Não é possível alocar % bytes de memória de trabalho" + +#: forder.c:512 +#, c-format +msgid "Item %d of order (ascending/descending) is %d. Must be +1 or -1." +msgstr "O item %d da ordem (crescente/decrescente) é %d. Deve ser +1 ou -1." + +#: forder.c:538 +#, c-format +msgid "" +"\n" +"*** Column %d passed to forder is a date stored as an 8 byte double but no " +"fractions are present. Please consider a 4 byte integer date such as IDate " +"to save space and time.\n" +msgstr "" +"\n" +"*** A coluna %d passada para forder é uma data armazenada como um double de " +"8 bytes, mas nenhuma fração está presente. Considere uma data inteira de 4 " +"bytes, como IDate, para economizar espaço e tempo.\n" + +#: forder.c:554 +#, c-format +msgid "Column %d passed to [f]order is type '%s', not yet supported." +msgstr "A coluna %d passada para [f]order é do tipo '%s', ainda não suportado." + +#: forder.c:707 +msgid "Internal error: column not supported, not caught earlier" +msgstr "Erro interno: coluna não suportada, não detectada anteriormente" + +#: forder.c:715 +#, c-format +msgid "nradix=%d\n" +msgstr "nradix=%d\n" + +#: forder.c:722 +#, c-format +msgid "" +"Failed to allocate TMP or UGRP or they weren't cache line aligned: nth=%d" +msgstr "" +"Falha ao alocar TMP ou UGRP ou eles não estavam alinhados com a linha de " +"cache: nth=%d" + +#: forder.c:728 +msgid "Could not allocate (very tiny) group size thread buffers" +msgstr "" +"Não foi possível alocar buffers de thread de tamanho de grupo (muito " +"pequenos)" + +#: forder.c:789 +#, c-format +msgid "Timing block %2d%s = %8.3f %8d\n" +msgstr "Bloco de tempo %2d%s = %8.3f %8d\n" + +#: forder.c:792 +#, c-format +msgid "stat[%03d]==%20\n" +msgstr "stat[%03d]==%20\n" + +#: forder.c:1048 +#, c-format +msgid "Failed to allocate parallel counts. my_n=%d, nBatch=%d" +msgstr "Falha ao alocar contagens paralelas. my_n=%d, nBatch=%d" + +#: forder.c:1157 +#, c-format +msgid "Unable to allocate TMP for my_n=%d items in parallel batch counting" +msgstr "" +"Não é possível alocar TMP para my_n=%d itens na contagem paralela em lote" + +#: forder.c:1265 +msgid "Internal error: issorted 'by' must be NULL or integer vector" +msgstr "Erro interno: issorted 'by' deve ser NULL ou vetor de inteiros" + +#: forder.c:1269 forder.c:1320 +#, c-format +msgid "issorted 'by' [%d] out of range [1,%d]" +msgstr "issorted 'by' [%d] fora de intervalo [1,%d]" + +#: forder.c:1274 +msgid "is.sorted does not work on list columns" +msgstr "is.sorted não funciona em colunas de lista" + +#: forder.c:1307 forder.c:1337 forder.c:1371 +#, c-format +msgid "type '%s' is not yet supported" +msgstr "Sem suporte no momento ao tipo '%s'" + +#: forder.c:1384 +msgid "x must be either NULL or an integer vector" +msgstr "x deve ser ou NULL ou um vetor de inteiros" + +#: forder.c:1386 +msgid "nrow must be integer vector length 1" +msgstr "nrow deve ser um vetor de inteiros de comprimento 1" + +#: forder.c:1388 +#, c-format +msgid "nrow==%d but must be >=0" +msgstr "nrow==%d, mas deve ser >=0" + +#: forder.c:1405 +msgid "x must be type 'double'" +msgstr "x deve ser do tipo 'double'" + +#: frank.c:9 frank.c:10 frank.c:187 frank.c:188 subset.c:110 subset.c:274 +#: subset.c:287 +#, c-format +msgid "Internal error. Argument '%s' to %s is type '%s' not '%s'" +msgstr "Erro interno. Argumento '%s' para %s é do tipo '%s', não '%s'" + +#: frank.c:14 frank.c:192 +#, c-format +msgid "Item %d of 'cols' is %d which is outside 1-based range [1,ncol(x)=%d]" +msgstr "" +"Item %d de 'cols' é %d, que está fora do intervalo baseado em 1 [1," +"ncol(x)=%d]" + +#: frank.c:24 frank.c:200 +#, c-format +msgid "" +"Column %d of input list x is length %d, inconsistent with first column of " +"that item which is length %d." +msgstr "" +"Coluna %d da lista x é do comprimento %d, inconsistente com a primeira " +"coluna daquele item, a qual é de comprimento %d." + +#: frank.c:101 frank.c:234 transpose.c:97 +#, c-format +msgid "Unsupported column type '%s'" +msgstr "Sem suporte a colunas do tipo '%s'" + +#: frank.c:120 +msgid "" +"Internal error: invalid ties.method for frankv(), should have been caught " +"before. please report to data.table issue tracker" +msgstr "" +"Erro interno: ties.method inválido para frankv(), deveria ter sido capturado " +"antes, por favor, relate isso no rastreador de problemas do data.table" + +#: frank.c:177 +#, c-format +msgid "Internal error: unknown ties value in frank: %d" +msgstr "Erro interno: valor de 'ties' desconhecido em frank: %d" + +#: fread.c:113 +#, c-format +msgid "" +"Internal error in line %d of fread.c, please report on data.table GitHub: " +msgstr "" +"Erro interno na linha %d de fread.c, por favor reporte no repositório GitHub " +"do data.table: " + +#: fread.c:159 +#, c-format +msgid "System error %lu unmapping view of file\n" +msgstr "Erro de sistema %lu ao desmapear visualização do arquivo\n" + +#: fread.c:162 +#, c-format +msgid "System errno %d unmapping file: %s\n" +msgstr "Erro de sistema de número %d ao desmapear o arquivo: %s\n" + +#: fread.c:225 +#, c-format +msgid "Internal error: NUMTYPE(%d) > nLetters(%d)" +msgstr "Erro interno: NUMTYPE(%d) > nLetters(%d)" + +#: fread.c:450 +#, c-format +msgid "Unable to allocate %s of contiguous virtual RAM. %s allocation." +msgstr "Não foi possível alocar %s de RAM virtual contígua. %s esta alocação." + +#: fread.c:455 +#, c-format +msgid "Avoidable %.3f seconds. %s time to copy.\n" +msgstr "%.3f segundos evitáveis. %s este tempo para copiar.\n" + +#: fread.c:456 +#, c-format +msgid " File copy in RAM took %.3f seconds.\n" +msgstr " A cópia do arquivo na RAM demorou %.3f segundos.\n" + +#: fread.c:1287 +msgid "" +"Previous fread() session was not cleaned up properly. Cleaned up ok at the " +"beginning of this fread() call.\n" +msgstr "" +"A sessão anterior do fread() não foi limpa corretamente. Limpeza bem-" +"sucedida no início desta chamada do fread().\n" + +#: fread.c:1290 +msgid "[01] Check arguments\n" +msgstr "[01] Verificar argumentos\n" + +#: fread.c:1297 +#, c-format +msgid " Using %d threads (omp_get_max_threads()=%d, nth=%d)\n" +msgstr " Usando %d threads (omp_get_max_threads()=%d, nth=%d)\n" + +#: fread.c:1305 +msgid "" +"Internal error: NAstrings is itself NULL. When empty it should be pointer to " +"NULL." +msgstr "" +"Erro interno: NAstrings é NULL. Quando vazio, deve ser um ponteiro para NULL." + +#: fread.c:1319 +#, c-format +msgid "freadMain: NAstring <<%s>> has whitespace at the beginning or end" +msgstr "freadMain: NAstring <<%s>> tem espaço em branco no início ou no final" + +#: fread.c:1323 +#, c-format +msgid "" +"freadMain: NAstring <<%s>> is recognized as type boolean, this is not " +"permitted." +msgstr "" +"freadMain: NAstring <<%s>> é reconhecido como tipo booleano, e isso não é " +"permitido." + +#: fread.c:1325 +#, c-format +msgid "freadMain: NAstring <<%s>> and logical01=TRUE, this is not permitted." +msgstr "freadMain: NAstring <<%s>> e logic01=TRUE, e isso não é permitido." + +#: fread.c:1337 +msgid " No NAstrings provided.\n" +msgstr " Nenhum NAstring fornecido.\n" + +#: fread.c:1339 +msgid " NAstrings = [" +msgstr " NAstrings = [" + +#: fread.c:1342 +msgid "]\n" +msgstr "]\n" + +#: fread.c:1344 +msgid " One or more of the NAstrings looks like a number.\n" +msgstr " Uma ou mais das NAstrings se parecem com um número.\n" + +#: fread.c:1346 +msgid " None of the NAstrings look like numbers.\n" +msgstr " Nenhuma das NAstrings se parece com números.\n" + +#: fread.c:1348 +#, c-format +msgid " skip num lines = %\n" +msgstr " pular número de linhas = %\n" + +#: fread.c:1349 +#, c-format +msgid " skip to string = <<%s>>\n" +msgstr " pular para a string = <<%s>>\n" + +#: fread.c:1350 +#, c-format +msgid " show progress = %d\n" +msgstr " mostrar progresso = %d\n" + +#: fread.c:1351 +#, c-format +msgid " 0/1 column will be read as %s\n" +msgstr " 0/1 coluna será lida como %s\n" + +#: fread.c:1363 +#, c-format +msgid "sep == quote ('%c') is not allowed" +msgstr "sep == quote ('%c') não é permitido" + +#: fread.c:1364 +#, c-format +msgid "sep == dec ('%c') is not allowed" +msgstr "sep == dec ('%c') não é permitido" + +#: fread.c:1365 +#, c-format +msgid "quote == dec ('%c') is not allowed" +msgstr "quote == dec ('%c') não é permitido" + +#: fread.c:1382 +msgid "[02] Opening the file\n" +msgstr "[02] Abrindo o arquivo\n" + +#: fread.c:1385 +msgid "" +" `input` argument is provided rather than a file name, interpreting as raw " +"text to read\n" +msgstr "" +" O argumento `input` é fornecido em vez de um nome de arquivo, " +"interpretando como texto bruto para leitura\n" + +#: fread.c:1389 +msgid "Internal error: last byte of character input isn't \\0" +msgstr "Erro interno: o último byte da entrada de caracteres não é \\0" + +#: fread.c:1392 +#, c-format +msgid " Opening file %s\n" +msgstr " Abrindo arquivo %s\n" + +#: fread.c:1396 fread.c:1425 +#, c-format +msgid "File not found: %s" +msgstr "Arquivo não encontrado: %s" + +#: fread.c:1400 +#, c-format +msgid "Opened file ok but couldn't obtain its size: %s" +msgstr "Arquivo aberto com sucesso, mas não foi possível obter seu tamanho: %s" + +#: fread.c:1403 fread.c:1435 +#, c-format +msgid "File is empty: %s" +msgstr "Arquivo está vazio: %s" + +#: fread.c:1404 fread.c:1436 +#, c-format +msgid " File opened, size = %s.\n" +msgstr " Arquivo aberto, tamanho = %s.\n" + +#: fread.c:1431 +#, c-format +msgid "Unable to open file after %d attempts (error %lu): %s" +msgstr "Não foi possível abrir o arquivo após %d tentativas (erro %lu): %s" + +#: fread.c:1433 +#, c-format +msgid "GetFileSizeEx failed (returned 0) on file: %s" +msgstr "GetFileSizeEx falhou (retornou 0) no arquivo: %s" + +#: fread.c:1438 +#, c-format +msgid "This is Windows, CreateFileMapping returned error %lu for file %s" +msgstr "Este é o Windows, CreateFileMapping retornou erro %lu para arquivo %s" + +#: fread.c:1445 +#, c-format +msgid "" +"Opened %s file ok but could not memory map it. This is a %dbit process. %s." +msgstr "" +"O arquivo %s foi aberto corretamente, mas não foi possível mapeá-lo na " +"memória. Este é um processo de %d bits. %s." + +#: fread.c:1446 +msgid "Please upgrade to 64bit" +msgstr "Por favor, atualize para 64 bits" + +#: fread.c:1446 +msgid "There is probably not enough contiguous virtual memory available" +msgstr "Provavelmente não há memória virtual contígua suficiente disponível" + +#: fread.c:1449 +msgid " Memory mapped ok\n" +msgstr " Memoria mapeada com sucesso\n" + +#: fread.c:1451 +msgid "" +"Internal error: Neither `input` nor `filename` are given, nothing to read." +msgstr "" +"Erro interno: Nem `input` nem `filename` foram fornecidos, nada para ler." + +#: fread.c:1468 +msgid "[03] Detect and skip BOM\n" +msgstr "[03] Detectar e pular BOM\n" + +#: fread.c:1472 +msgid "" +" UTF-8 byte order mark EF BB BF found at the start of the file and " +"skipped.\n" +msgstr "" +" Marca de ordem de byte UTF-8 EF BB BF encontrada no início do arquivo e " +"ignorada.\n" + +#: fread.c:1477 +msgid "" +"GB-18030 encoding detected, however fread() is unable to decode it. Some " +"character fields may be garbled.\n" +msgstr "" +"Codificação GB-18030 detectada, porém fread() não consegue decodificá-la. " +"Alguns campos de caracteres podem estar distorcidos.\n" + +#: fread.c:1480 +msgid "" +"File is encoded in UTF-16, this encoding is not supported by fread(). Please " +"recode the file to UTF-8." +msgstr "" +"O arquivo está codificado em UTF-16, mas fread() não tem suporte a essa " +"codificação. Favor recodificar o arquivo para UTF-8." + +#: fread.c:1485 +#, c-format +msgid " Last byte(s) of input found to be %s and removed.\n" +msgstr "" +" Descobriu-se que os último(s) byte(s) de entrada eram %s , que foi(foram) " +"removido(s).\n" + +#: fread.c:1488 +msgid "Input is empty or only contains BOM or terminal control characters" +msgstr "" +"A entrada está vazia ou contém apenas BOM ou caracteres de controle de " +"terminal" + +#: fread.c:1495 +msgid "[04] Arrange mmap to be \\0 terminated\n" +msgstr "[04] Organizar mmap para que termine com \\0\n" + +#: fread.c:1502 +msgid "" +" No \\n exists in the file at all, so single \\r (if any) will be taken as " +"one line ending. This is unusual but will happen normally when there is no " +"\\r either; e.g. a single line missing its end of line.\n" +msgstr "" +" Não existe \\n no arquivo, então \\r simples (se houver) será considerado " +"como um final de linha. Isso é incomum, mas acontecerá normalmente quando " +"não houver \\r; por exemplo. uma única linha faltando o final da linha.\n" + +#: fread.c:1503 +msgid "" +" \\n has been found in the input and different lines can end with different " +"line endings (e.g. mixed \\n and \\r\\n in one file). This is common and " +"ideal.\n" +msgstr "" +" \\n foi encontrado na entrada e linhas diferentes podem terminar com " +"finais de linha diferentes (por exemplo, \\n e \\r\\n misturados em um " +"arquivo). Isso é comum e ideal.\n" + +#: fread.c:1527 +#, c-format +msgid "" +" File ends abruptly with '%c'. Final end-of-line is missing. Using cow page " +"to write 0 to the last byte.\n" +msgstr "" +" O arquivo termina abruptamente com '%c'. Um fim de linha ao final está " +"faltando. Usando a página de cópia na gravação (COW) para escrever 0 no " +"último byte.\n" + +#: fread.c:1533 +msgid "" +"This file is very unusual: it ends abruptly without a final newline, and " +"also its size is a multiple of 4096 bytes. Please properly end the last row " +"with a newline using for example 'echo >> file' to avoid this " +msgstr "" +"Este arquivo é muito incomum: termina abruptamente sem uma nova linha final " +"e também seu tamanho é um múltiplo de 4096 bytes. Por favor, termine " +"corretamente a última linha com uma nova linha usando, por exemplo, 'echo >> " +"arquivo' para evitar isto " + +#: fread.c:1534 +#, c-format +msgid " File ends abruptly with '%c'. Copying file in RAM. %s copy.\n" +msgstr "" +" O arquivo termina abruptamente com '%c'. Copiando arquivo na RAM. %s esta " +"cópia.\n" + +#: fread.c:1568 +msgid "[05] Skipping initial rows if needed\n" +msgstr "[05] Pulando linhas inicias se necessário\n" + +#: fread.c:1574 +#, c-format +msgid "" +"skip='%s' not found in input (it is case sensitive and literal; i.e., no " +"patterns, wildcards or regex)" +msgstr "" +"skip='%s' não encontrado na entrada (diferencia maiúsculas de minúsculas e é " +"literal; ou seja, sem padrões, caracteres curingas ou regex)" + +#: fread.c:1580 +#, c-format +msgid "" +"Found skip='%s' on line %. Taking this to be header row or first row " +"of data.\n" +msgstr "" +"skip='%s' encontrado na linha %. Considerando isso como linha de " +"cabeçalho ou primeira linha de dados.\n" + +#: fread.c:1593 +#, c-format +msgid " Skipped to line % in the file" +msgstr " Pulado para a linha % no arquivo" + +#: fread.c:1594 +#, c-format +msgid "skip=% but the input only has % line%s" +msgstr "skip=%, mas a entrada tem apenas % linha%s" + +#: fread.c:1603 +msgid "" +"Input is either empty, fully whitespace, or skip has been set after the last " +"non-whitespace." +msgstr "" +"A entrada está vazia, totalmente com espaço em branco ou o pulo foi definido " +"após o último caractere diferente de espaço em branco." + +#: fread.c:1605 +#, c-format +msgid " Moved forward to first non-blank line (%d)\n" +msgstr " Avançado para a primeira linha não vazia (%d)\n" + +#: fread.c:1606 +#, c-format +msgid " Positioned on line %d starting: <<%s>>\n" +msgstr " Posicionado na linha %d começando com: <<%s>>\n" + +#: fread.c:1624 +msgid "[06] Detect separator, quoting rule, and ncolumns\n" +msgstr "[06] Detectar separador, regra de aspas e número de colunas\n" + +#: fread.c:1628 +msgid " sep='\\n' passed in meaning read lines as single character column\n" +msgstr "" +" sep='\\n' recebido no sentido de ler linhas como coluna de caractere " +"único\n" + +#: fread.c:1647 +msgid " Detecting sep automatically ...\n" +msgstr " Detectando sep automaticamente ...\n" + +#: fread.c:1654 +#, c-format +msgid " Using supplied sep '%s'\n" +msgstr " Usando sep fornecido '%s'\n" + +#: fread.c:1688 +#, c-format +msgid " with %d fields using quote rule %d\n" +msgstr " com campos %d usando regra de aspas %d\n" + +#: fread.c:1738 +#, c-format +msgid " with %d lines of %d fields using quote rule %d\n" +msgstr " com %d linhas de %d campos usando regra de aspas %d\n" + +#: fread.c:1745 +msgid "" +" No sep and quote rule found a block of 2x2 or greater. Single column " +"input.\n" +msgstr "" +" Nenhum sep e regra de aspas encontrou um bloco de 2x2 ou maior. Entrada de " +"coluna única.\n" + +#: fread.c:1761 +msgid "" +"Single column input contains invalid quotes. Self healing only effective " +"when ncol>1" +msgstr "" +"Entrada de coluna única contém aspas inválidas. A autorreparação só é eficaz " +"quando ncol>1" + +#: fread.c:1766 +#, c-format +msgid "" +"Found and resolved improper quoting in first %d rows. If the fields are not " +"quoted (e.g. field separator does not appear within any field), try " +"quote=\"\" to avoid this warning." +msgstr "" +"Foram encontradas e resolvidas aspas inadequadas nas primeiras %d linhas. Se " +"os campos não estiverem entre aspas (por exemplo, o separador de campo não " +"aparece em nenhum campo), tente quote=\"\" para evitar este aviso." + +#: fread.c:1782 +#, c-format +msgid "" +"Internal error: ncol==%d line==%d after detecting sep, ncol and first line" +msgstr "" +"Erro interno: ncol==%d line==%d depois de detectar sep, ncol e a primeira " +"linha" + +#: fread.c:1785 +#, c-format +msgid "Internal error: first line has field count %d but expecting %d" +msgstr "" +"Erro interno: a primeira linha tem contagem de campos %d, mas esperava %d" + +#: fread.c:1787 +#, c-format +msgid "" +" Detected %d columns on line %d. This line is either column names or first " +"data row. Line starts as: <<%s>>\n" +msgstr "" +" %d colunas detectadas na linha %d. Esta linha contém nomes de colunas ou " +"primeira linha de dados. A linha começa como: <<%s>>\n" + +#: fread.c:1789 +#, c-format +msgid " Quote rule picked = %d\n" +msgstr " Regra de aspas escolhida = %d\n" + +#: fread.c:1790 +#, c-format +msgid " fill=%s and the most number of columns found is %d\n" +msgstr " fill=%s e o maior número de colunas encontradas é %d\n" + +#: fread.c:1796 +msgid "" +"This file is very unusual: it's one single column, ends with 2 or more end-" +"of-line (representing several NA at the end), and is a multiple of 4096, too." +msgstr "" +"Este arquivo é muito incomum: é uma única coluna, termina com 2 ou mais " +"finais de linha (representando vários NA no final) e também é um múltiplo de " +"4096." + +#: fread.c:1797 +#, c-format +msgid " Copying file in RAM. %s\n" +msgstr " Copiando arquivo na RAM. %s\n" + +#: fread.c:1803 +msgid "" +" 1-column file ends with 2 or more end-of-line. Restoring last eol using " +"extra byte in cow page.\n" +msgstr "" +" O arquivo de 1 coluna termina com 2 ou mais finais de linha. Restaurando o " +"último fim de linha usando byte extra na página de cópia na gravação (cow).\n" + +#: fread.c:1822 +msgid "" +"[07] Detect column types, dec, good nrow estimate and whether first row is " +"column names\n" +msgstr "" +"[07] Detectar tipos de coluna, dec, boa estimativa de nrow e se a primeira " +"linha são nomes de coluna\n" + +#: fread.c:1823 +#, c-format +msgid " 'header' changed by user from 'auto' to %s\n" +msgstr " 'header' modificado pelo usuário de 'auto' para %s\n" + +#: fread.c:1827 +#, c-format +msgid "Failed to allocate 2 x %d bytes for type and tmpType: %s" +msgstr "Falha ao alocar 2 x %d bytes para type e tmpType: %s" + +#: fread.c:1831 +msgid " sep=',' so dec set to '.'\n" +msgstr " sep=',', então dec definido para '.'\n" + +#: fread.c:1855 +#, c-format +msgid " Number of sampling jump points = %d because " +msgstr " Número de pontos de pulo de amostragem = %d porque" + +#: fread.c:1856 +#, c-format +msgid "nrow limit (%) supplied\n" +msgstr "Limite de nrow (%) fornecido\n" + +#: fread.c:1857 +msgid "jump0size==0\n" +msgstr "jump0size==0\n" + +#: fread.c:1858 +#, c-format +msgid "" +"(% bytes from row 1 to eof) / (2 * % jump0size) == " +"%\n" +msgstr "" +"(% bytes da linha 1 até o fim do arquivo) / (2 * % " +"jump0size) == %\n" + +#: fread.c:1897 +#, c-format +msgid "" +" A line with too-%s fields (%d/%d) was found on line %d of sample jump %d. " +"%s\n" +msgstr "" +" Uma linha com muito %s campos (%d/%d) foi encontrada na linha %d de " +"amostra de pulo %d. %s\n" + +#: fread.c:1898 +msgid "few" +msgstr "poucos" + +#: fread.c:1898 +msgid "many" +msgstr "numerosos" + +#: fread.c:1898 +msgid "" +"Most likely this jump landed awkwardly so type bumps here will be skipped." +msgstr "" +"Muito provavelmente este pulo caiu de forma estranha, então os solavancos " +"nos tipos aqui serão ignorados." + +#: fread.c:1921 fread.c:1947 +#, c-format +msgid " dec='%c' detected based on a balance of %d parsed fields\n" +msgstr " dec='%c' detectado com base em um balanço de %d campos analisados\n" + +#: fread.c:1931 +#, c-format +msgid " Type codes (jump %03d) : %s Quote rule %d\n" +msgstr " Códigos de tipos (pulo %03d) : %s Regra de pulo %d\n" + +#: fread.c:1953 +#, c-format +msgid "" +" 'header' determined to be true due to column %d containing a string on row " +"1 and a lower type (%s) in the rest of the % sample rows\n" +msgstr "" +" 'header' determinado como sendo verdadeiro devido à coluna %d conter uma " +"string na linha 1 e um tipo inferior (%s) no restante das % linhas " +"de amostra\n" + +#: fread.c:1965 +msgid "" +"Internal error: row before first data row has the same number of fields but " +"we're not using it." +msgstr "" +"Erro interno: a linha anterior à primeira linha de dados tem o mesmo número " +"de campos, mas não a estamos usando." + +#: fread.c:1966 +msgid "" +"Internal error: ch!=pos after counting fields in the line before the first " +"data row." +msgstr "" +"Erro interno: ch!=pos após contar os campos na linha antes da primeira linha " +"de dados." + +#: fread.c:1967 +#, c-format +msgid "" +"Types in 1st data row match types in 2nd data row but previous row has %d " +"fields. Taking previous row as column names." +msgstr "" +"Os tipos na 1ª linha de dados correspondem aos tipos na 2ª linha de dados, " +"mas a linha anterior possui %d campos. Tomando a linha anterior como nomes " +"de coluna." + +#: fread.c:1970 +#, c-format +msgid "" +"Detected %d column names but the data has %d columns (i.e. invalid file). " +"Added %d extra default column name%s\n" +msgstr "" +"Foram detectados %d nomes de colunas, mas os dados possuem %d colunas (ou " +"seja, arquivo inválido). Adicionado(s) %d nome(s) de coluna padrão extra%s\n" + +#: fread.c:1971 +msgid "" +" for the first column which is guessed to be row names or an index. Use " +"setnames() afterwards if this guess is not correct, or fix the file write " +"command that created the file to create a valid file." +msgstr "" +" para a primeira coluna que se supõe ser nomes de linhas ou um índice. Use " +"setnames() posteriormente se essa estimativa não estiver correta ou corrija " +"o comando de gravação de arquivo que criou o arquivo para criar um arquivo " +"válido." + +#: fread.c:1971 +msgid "s at the end." +msgstr " ao final." + +#: fread.c:1973 +msgid "" +"Internal error: fill=true but there is a previous row which should already " +"have been filled." +msgstr "" +"Erro interno: fill=true, mas há uma linha anterior que já deveria ter sido " +"preenchida." + +#: fread.c:1974 +#, c-format +msgid "" +"Detected %d column names but the data has %d columns. Filling rows " +"automatically. Set fill=TRUE explicitly to avoid this warning.\n" +msgstr "" +"Foram detectados %d nomes de colunas, mas os dados têm %d colunas. " +"Preenchendo linhas automaticamente. Defina fill=TRUE explicitamente para " +"evitar esse aviso.\n" + +#: fread.c:1978 +#, c-format +msgid "Failed to realloc 2 x %d bytes for type and tmpType: %s" +msgstr "Falha ao realocar 2 x %d bytes para tipo e tmpType: %s" + +#: fread.c:1998 +#, c-format +msgid "" +" 'header' determined to be %s because there are%s number fields in the " +"first and only row\n" +msgstr "" +" 'header' determinado como %s porque%s há campo numérico na primeira e " +"única linha\n" + +#: fread.c:1998 +msgid " no" +msgstr " não" + +#: fread.c:2001 +msgid "" +" 'header' determined to be true because all columns are type string and a " +"better guess is not possible\n" +msgstr "" +" 'header'' determinado como verdadeiro porque todas as colunas são do tipo " +"string e uma estimativa melhor não é possível\n" + +#: fread.c:2003 +msgid "" +" 'header' determined to be false because there are some number columns and " +"those columns do not have a string field at the top of them\n" +msgstr "" +" 'header' determinado como falso porque existem algumas colunas numéricas e " +"essas colunas não possuem um campo de string no topo delas\n" + +#: fread.c:2019 +#, c-format +msgid " Type codes (first row) : %s Quote rule %d\n" +msgstr " Códigos de tipos (primeira linha) : %s Regra de pulo %d\n" + +#: fread.c:2028 +#, c-format +msgid "" +" All rows were sampled since file is small so we know nrow=% " +"exactly\n" +msgstr "" +" Todas as linhas foram amostradas porque o arquivo é pequeno, então sabemos " +"exatamente nrow=%\n" + +#: fread.c:2040 fread.c:2047 +msgid " =====\n" +msgstr " =====\n" + +#: fread.c:2041 +#, c-format +msgid "" +" Sampled % rows (handled \\n inside quoted fields) at %d jump " +"points\n" +msgstr "" +" Foram amostradas % linhas (tratados \\n dentro dos campos entre " +"aspas) em %d pontos de pulo\n" + +#: fread.c:2042 +#, c-format +msgid "" +" Bytes from first data row on line %d to the end of last row: %\n" +msgstr "" +" Bytes da primeira linha de dados na linha %d até o final da última linha: " +"%\n" + +#: fread.c:2043 +#, c-format +msgid " Line length: mean=%.2f sd=%.2f min=%d max=%d\n" +msgstr " Tamanho da linha: mean=%.2f sd=%.2f min=%d max=%d\n" + +#: fread.c:2044 +#, c-format +msgid " Estimated number of rows: % / %.2f = %\n" +msgstr " Número estimado de linhas: % / %.2f = %\n" + +#: fread.c:2045 +#, c-format +msgid "" +" Initial alloc = % rows (% + %d%%) using bytes/" +"max(mean-2*sd,min) clamped between [1.1*estn, 2.0*estn]\n" +msgstr "" +" Alocação inicial = % linhas (% + %d%%) usando bytes/" +"max(mean-2*sd,min) clampeados entre [1.1*estn, 2.0*estn]\n" + +#: fread.c:2049 +#, c-format +msgid "Internal error: sampleLines(%) > allocnrow(%)" +msgstr "Erro interno: sampleLines(%) > allocnrow(%)" + +#: fread.c:2053 +#, c-format +msgid " Alloc limited to lower nrows=% passed in.\n" +msgstr " Alocação limitada a inferiores nrows=% passadas.\n" + +#: fread.c:2065 +msgid "[08] Assign column names\n" +msgstr "[08] Atribuir nomes de coluna\n" + +#: fread.c:2073 +#, c-format +msgid "Unable to allocate %d*%d bytes for column name pointers: %s" +msgstr "" +"Não foi possível alocar %d*%d bytes para ponteiros de nome de coluna: %s" + +#: fread.c:2095 +#, c-format +msgid "Internal error: reading colnames ending on '%c'" +msgstr "Erro interno: lendo colnames que terminam em '%c'" + +#: fread.c:2113 +msgid "[09] Apply user overrides on column types\n" +msgstr "[09] Aplicar substituições de usuário em tipos de colunas\n" + +#: fread.c:2117 +msgid " Cancelled by user: userOverride() returned false." +msgstr " Cancelado pelo usuário: userOverride() retornou falso." + +#: fread.c:2127 +#, c-format +msgid "Failed to allocate %d bytes for size array: %s" +msgstr "Falha ao alocar %d bytes para array de tamanho: %s" + +#: fread.c:2134 +#, c-format +msgid "" +"Attempt to override column %d%s%.*s%s of inherent type '%s' down to '%s' " +"ignored. Only overrides to a higher type are currently supported. If this " +"was intended, please coerce to the lower type afterwards." +msgstr "" +"Tentativa de substituir a coluna %d%s%.*s%s do tipo inerente '%s' até '%s' " +"ignorada. Atualmente, apenas substituições para um tipo superior são " +"suportadas. Se isso foi intencional, por favor, faça coação para o tipo " +"inferior depois." + +#: fread.c:2149 +#, c-format +msgid " After %d type and %d drop user overrides : %s\n" +msgstr " Depois de substituição de usuário para %d tipos e %d descartes: %s\n" + +#: fread.c:2157 +msgid "[10] Allocate memory for the datatable\n" +msgstr "[10] Alocar memória para a data.table\n" + +#: fread.c:2158 +#, c-format +msgid " Allocating %d column slots (%d - %d dropped) with % rows\n" +msgstr "" +" Alocando %d slots de coluna (%d - %d descartados) com % linhas\n" + +#: fread.c:2213 +#, c-format +msgid "Buffer size % is too large\n" +msgstr "Tamanho de buffer % grande demais\n" + +#: fread.c:2216 +msgid "[11] Read the data\n" +msgstr "[11] Ler os dados\n" + +#: fread.c:2219 +#, c-format +msgid " jumps=[%d..%d), chunk_size=%, total_size=%\n" +msgstr " jumps=[%d..%d), chunk_size=%, total_size=%\n" + +#: fread.c:2231 +#, c-format +msgid "Internal error: Master thread is not thread 0 but thread %d.\n" +msgstr "Erro interno: A thread mestre não é a thread 0, mas a thread %d.\n" + +#: fread.c:2444 +#, c-format +msgid "" +"Column %d%s%.*s%s bumped from '%s' to '%s' due to <<%.*s>> on row %\n" +msgstr "" +"Coluna %d%s%.*s%s passou de '%s' para '%s' devido a <<%.*s>> na linha " +"%\n" + +#: fread.c:2494 +#, c-format +msgid "" +"Internal error: invalid head position. jump=%d, headPos=%p, " +"thisJumpStart=%p, sof=%p" +msgstr "" +"Erro interno: posição inválida de head. jump=%d, headPos=%p, " +"thisJumpStart=%p, sof=%p" + +#: fread.c:2562 +#, c-format +msgid " Provided number of fill columns: %d but only found %d\n" +msgstr "" +" Fornecido número de colunas para preenchimento: %d, mas foram encontradas " +"apenas %d\n" + +#: fread.c:2563 +#, c-format +msgid " Dropping %d overallocated columns\n" +msgstr " Descartando %d colunas sobrealocadas\n" + +#: fread.c:2586 +#, c-format +msgid "" +" Too few rows allocated. Allocating additional % rows (now " +"nrows=%) and continue reading from jump %d\n" +msgstr "" +" Poucas linhas alocadas. Alocando % linhas adicionais (agora " +"nrows=%) e continuar lendo a partir do pulo %d\n" + +#: fread.c:2593 +#, c-format +msgid " Restarting team from jump %d. nSwept==%d quoteRule==%d\n" +msgstr " Reiniciando time a partir do pulo %d. nSwept==%d quoteRule==%d\n" + +#: fread.c:2613 +#, c-format +msgid " %d out-of-sample type bumps: %s\n" +msgstr " %d colisões do tipo fora da amostra: %s\n" + +#: fread.c:2648 +#, c-format +msgid "" +"Read % rows x %d columns from %s file in %02d:%06.3f wall clock " +"time\n" +msgstr "" +"Leitura de % linhas x %d colunas do arquivo %s em %02d:%06.3f do " +"horário do wallclock\n" + +#: fread.c:2655 +msgid "[12] Finalizing the datatable\n" +msgstr "[12] Finalizando a data.table\n" + +#: fread.c:2656 +msgid " Type counts:\n" +msgstr " Contagens de tipo:\n" + +#: fread.c:2658 +#, c-format +msgid "%10d : %-9s '%c'\n" +msgstr "%10d : %-9s '%c'\n" + +#: fread.c:2674 +#, c-format +msgid "Discarded single-line footer: <<%s>>" +msgstr "Rodapé de linha única descartado: <<%s>>" + +#: fread.c:2680 +#, c-format +msgid "" +"Stopped early on line %. Expected %d fields but found %d. Consider " +"fill=%d or even more based on your knowledge of the input file. First " +"discarded non-empty line: <<%s>>" +msgstr "" +"Parou cedo na linha %. %d campos esperados, mas foram encontrados " +"%d. Considere fill=%d ou mais com base em seu conhecimento do arquivo de " +"entrada. Primeira linha descartada não vazia: <<%s>>" + +#: fread.c:2683 +#, c-format +msgid "" +"Stopped early on line %. Expected %d fields but found %d. Consider " +"fill=TRUE and comment.char=. First discarded non-empty line: <<%s>>" +msgstr "" +"Parou cedo na linha %. %d campos esperados, mas foram encontrados " +"%d. Considere fill=TRUE e comment.char=. Primeira linha não vazia " +"descartada: <<%s>>" + +#: fread.c:2690 +#, c-format +msgid "" +"Found and resolved improper quoting out-of-sample. First healed line " +"%: <<%s>>. If the fields are not quoted (e.g. field separator does " +"not appear within any field), try quote=\"\" to avoid this warning." +msgstr "" +"Encontradas e resolvidas aspas inadequadas fora da amostra. Primeira linha " +"corrigida %: <<%s>>. Se os campos não estiverem entre aspas (por " +"exemplo, o separador de campo não aparece em nenhum campo), tente quote=\"\" " +"para evitar este aviso." + +#: fread.c:2694 +msgid "=============================\n" +msgstr "=============================\n" + +#: fread.c:2696 +#, c-format +msgid "%8.3fs (%3.0f%%) Memory map %.3fGB file\n" +msgstr "%8.3fs (%3.0f%%) %.3fGB de arquivo de mapa de memória\n" + +#: fread.c:2697 +#, c-format +msgid "%8.3fs (%3.0f%%) sep=" +msgstr "%8.3fs (%3.0f%%) sep=" + +#: fread.c:2699 +#, c-format +msgid " ncol=%d and header detection\n" +msgstr " detecção de cabeçalho e ncol=%d\n" + +#: fread.c:2700 +#, c-format +msgid "%8.3fs (%3.0f%%) Column type detection using % sample rows\n" +msgstr "" +"%8.3fs (%3.0f%%) Detecção de tipo de coluna usando % linhas de " +"amostra\n" + +#: fread.c:2702 +#, c-format +msgid "" +"%8.3fs (%3.0f%%) Allocation of % rows x %d cols (%.3fGB) of which " +"% (%3.0f%%) rows used\n" +msgstr "" +"%8.3fs (%3.0f%%) Alocação de % linhas x %d colunas (%.3fGB) das " +"quais % (%3.0f%%) linhas usadas\n" + +#: fread.c:2706 +#, c-format +msgid "" +"%8.3fs (%3.0f%%) Reading %d chunks (%d swept) of %.3fMB (each chunk %d rows) " +"using %d threads\n" +msgstr "" +"%8.3fs (%3.0f%%) Lendo %d pedaços (%d percorridos) de %.3fMB (cada pedaço %d " +"linhas) usando %d threads\n" + +#: fread.c:2708 +#, c-format +msgid "" +" + %8.3fs (%3.0f%%) Parse to row-major thread buffers (grown %d times)\n" +msgstr "" +" + %8.3fs (%3.0f%%) Analisar para buffers de thread com ordem principal de " +"linha (aumentados %d vezes)\n" + +#: fread.c:2709 +#, c-format +msgid " + %8.3fs (%3.0f%%) Transpose\n" +msgstr " + %8.3fs (%3.0f%%) Transpor\n" + +#: fread.c:2710 +#, c-format +msgid " + %8.3fs (%3.0f%%) Waiting\n" +msgstr " + %8.3fs (%3.0f%%) Esperando\n" + +#: fread.c:2711 +#, c-format +msgid "" +"%8.3fs (%3.0f%%) Rereading %d columns due to out-of-sample type exceptions\n" +msgstr "" +"%8.3fs (%3.0f%%) Relendo %d colunas devido a exceções de tipo fora da " +"amostra\n" + +#: fread.c:2713 +#, c-format +msgid "%8.3fs Total\n" +msgstr "%8.3fs Total\n" + +#: freadR.c:87 +msgid "" +"Internal error: freadR input not a single character string: a filename or " +"the data itself. Should have been caught at R level." +msgstr "" +"Erro interno: entrada para freadR não é uma única string de caracteres: um " +"nome de arquivo ou os dados propriamente ditos. Deveria ter sido capturado " +"no nível R." + +#: freadR.c:90 +msgid "Internal error: freadR isFileNameArg not TRUE or FALSE" +msgstr "Erro interno: freadR isFileNameArg não TRUE ou FALSE" + +#: freadR.c:92 +#, c-format +msgid "freadR.c has been passed a filename: %s\n" +msgstr "freadR.c recebeu um nome de arquivo: %s\n" + +#: freadR.c:96 +msgid "freadR.c has been passed the data as text input (not a filename)\n" +msgstr "" +"freadR.c recebeu os dados como entrada de texto (não nome de arquivo)\n" + +#: freadR.c:102 +msgid "" +"Internal error: freadR sep not a single character. R level catches this." +msgstr "" +"Erro interno: sep de freadR não é um único caracteres. O nível R captura " +"isso." + +#: freadR.c:106 +msgid "" +"Internal error: freadR dec not a single character. R level catches this." +msgstr "" +"Erro interno: dec de freadR não é um único caractere. O nível R captura isso." + +#: freadR.c:114 +msgid "quote= must be a single character, blank \"\", or FALSE" +msgstr "quote= deve ser um único caractere, \"\" vazio, ou FALSE" + +#: freadR.c:126 +msgid "Internal error: freadR nrows not a single real. R level catches this." +msgstr "" +"Erro interno: nrows de freadR não é um único número real. O nível R captura " +"isso." + +#: freadR.c:142 +msgid "Internal error: skip not integer or string in freadR.c" +msgstr "Erro interno: skip não é inteiro ou string em freadR.c" + +#: freadR.c:145 +#, c-format +msgid "Internal error: NAstringsArg is type '%s'. R level catches this" +msgstr "Erro interno: NAstringsArg é tipo '%s'. O nível R captura isso" + +#: freadR.c:158 +#, c-format +msgid "nThread(%d)<1" +msgstr "nThread(%d)<1" + +#: freadR.c:166 +msgid "'integer64' must be a single character string" +msgstr "'integer64' deve ser uma única string de caracteres" + +#: freadR.c:174 +#, c-format +msgid "" +"Invalid value integer64='%s'. Must be 'integer64', 'character', 'double' or " +"'numeric'" +msgstr "" +"Valor inválido integer64='%s'. Deve ser 'integer64', 'character', 'double' " +"ou 'numeric'" + +#: freadR.c:182 +msgid "Use either select= or drop= but not both." +msgstr "Use ou select= ou drop= mas não ambos." + +#: freadR.c:185 +msgid "" +"select= is type list for specifying types in select=, but colClasses= has " +"been provided as well. Please remove colClasses=." +msgstr "" +"select= é do tipo lista para especificar tipos em select=, mas colClasses= " +"também foi fornecido. Favor remover colClasses=." + +#: freadR.c:187 +msgid "" +"select= is type list but has no names; expecting list(type1=cols1, " +"type2=cols2, ...)" +msgstr "" +"select= é do tipo lista mas não tem nomes; esperando lista(tipo1=colulnas1, " +"tipo2=colunas2, …)" + +#: freadR.c:194 +msgid "" +"select= is a named vector specifying the columns to select and their types, " +"but colClasses= has been provided as well. Please remove colClasses=." +msgstr "" +"select= é um vetor nomeado especificando as colunas a selecionar e seus " +"tipos, mas colClasses= também foi fornecido. Favor remover colClasses=." + +#: freadR.c:202 freadR.c:368 +msgid "colClasses is type list but has no names" +msgstr "colClasses é do tipo lista mas não tem nomes" + +#: freadR.c:212 +#, c-format +msgid "encoding='%s' invalid. Must be 'unknown', 'Latin-1' or 'UTF-8'" +msgstr "encoding='%s' inválido. Deve ser 'unknown', 'Latin-1' ou 'UTF-8'" + +#: freadR.c:235 +#, c-format +msgid "Column name '%s' (%s) not found" +msgstr "Nome de coluna '%s' (%s) não encontrado" + +#: freadR.c:237 +#, c-format +msgid "%s is NA" +msgstr "%s é NA" + +#: freadR.c:239 +#, c-format +msgid "%s is %d which is out of range [1,ncol=%d]" +msgstr "%s é %d, que está fora do intervalo [1,ncol=%d] " + +#: freadR.c:253 +msgid "Internal error: typeSize[CT_BOOL8_N] != 1" +msgstr "Erro interno: typeSize[CT_BOOL8_N] != 1" + +#: freadR.c:254 +msgid "Internal error: typeSize[CT_STRING] != 1" +msgstr "Erro interno: typeSize[CT_STRING] != 1" + +#: freadR.c:288 +#, c-format +msgid "" +"Column name '%s' not found in column name header (case sensitive), skipping." +msgstr "" +"Nome de coluna '%s' não encontrado no cabeçalho de nome de colunas (sensível " +"a maiúsculas), pulando." + +#: freadR.c:298 +#, c-format +msgid "" +"Column number %d (select[%d]) is negative but should be in the range [1," +"ncol=%d]. Consider drop= for column exclusion." +msgstr "" +"Número de coluna %d (select[%d]) é negativo mas deveria estar no intervalo " +"[1,ncol=%d]. Considere drop= para exclusão de coluna." + +#: freadR.c:299 +#, c-format +msgid "" +"select = 0 (select[%d]) has no meaning. All values of select should be in " +"the range [1,ncol=%d]." +msgstr "" +"select = 0 (select[%d]) não tem significado. Todos os valores de select " +"deveriam estar no intervalo [1,ncol=%d]." + +#: freadR.c:300 +#, c-format +msgid "" +"Column number %d (select[%d]) is too large for this table, which only has %d " +"columns." +msgstr "" +"Número de coluna %d (select[%d]) é grande demais para esta tabela, que só " +"tem %d colunas." + +#: freadR.c:301 +#, c-format +msgid "Column number %d ('%s') has been selected twice by select=" +msgstr "O número de coluna %d ('%s') foi selecionado duas vezes por select=" + +#: freadR.c:324 +#, c-format +msgid "" +"colClasses= is an unnamed vector of types, length %d, but there are %d " +"columns in the input. To specify types for a subset of columns, you can use " +"a named vector, list format, or specify types using select= instead of " +"colClasses=. Please see examples in ?fread." +msgstr "" +"colClasses= é um vetor não nomeado de tipos, comprimento %d, mas há %d " +"colunas na entrada. Para especificar tipos para um subconjunto de colunas, " +"você pode usar um vetor nomeado, formato de lista, ou especificar tipos " +"usando select= em vez de colClasses=. Favor ver exemplos em ?fread." + +#: freadR.c:344 +msgid "Internal error: selectInts is NULL but selectColClasses is true" +msgstr "Erro interno: selectInts é NULL, mas selectColClasses é true" + +#: freadR.c:346 +msgid "" +"Internal error: length(selectSxp)!=length(colClassesSxp) but " +"selectColClasses is true" +msgstr "" +"Erro interno: length(selectSxp)!=length(colClassesSxp) mas selectColClasses " +"é true" + +#: freadR.c:366 +#, c-format +msgid "colClasses is type '%s' but should be list or character" +msgstr "colClasses é do tipo '%s' mas deveria ser lista ou caractere" + +#: freadR.c:390 +#, c-format +msgid "Column name '%s' (colClasses[[%d]][%d]) not found" +msgstr "Nome de coluna '%s' (colClasses[[%d]][%d]) não encontrado " + +#: freadR.c:392 +#, c-format +msgid "colClasses[[%d]][%d] is NA" +msgstr "colClasses[[%d]][%d] é NA" + +#: freadR.c:396 +#, c-format +msgid "Column number %d (colClasses[[%d]][%d]) is out of range [1,ncol=%d]" +msgstr "" +"Número de coluna %d (colClasses[[%d]][%d]) está fora da faixa [1,ncol=%d]" + +#: freadR.c:400 +#, c-format +msgid "" +"Column %d ('%s') appears more than once in colClasses. The second time is " +"colClasses[[%d]][%d]." +msgstr "" +"Coluna %d ('%s') aparece mais de uma vez em colClasses. A segunda vez é " +"colClasses[[%d]][%d]." + +#: freadR.c:640 +#, c-format +msgid "Field size is 1 but the field is of type %d\n" +msgstr "Tamanho do campo é 1 mas o campo é do tipo %d\n" + +#: freadR.c:649 +#, c-format +msgid "Internal error: unexpected field of size %d\n" +msgstr "Erro interno: campo inesperado de tamanho %d\n" + +#: freadR.c:717 utils.c:387 +#, c-format +msgid "%s" +msgstr "%s" + +#: froll.c:14 froll.c:223 froll.c:407 +#, c-format +msgid "%s: window width longer than input vector, returning all NA vector\n" +msgstr "" +"%s: largura da janela maior do que o vetor de entrada, retornando vetor todo " +"NA\n" + +#: froll.c:32 froll.c:240 froll.c:456 +#, c-format +msgid "%s: align %d, shift answer by %d\n" +msgstr "%s: align %d, deslocar resposta por %d\n" + +#: froll.c:39 froll.c:247 frolladaptive.c:19 frolladaptive.c:214 +#, c-format +msgid "%s: processing algo %u took %.3fs\n" +msgstr "%s: processar algo %u levou %.3fs\n" + +#: froll.c:48 froll.c:251 +#, c-format +msgid "%s: running for input length %, window %d, hasna %d, narm %d\n" +msgstr "" +"%s: executando para entrada de comprimento %, janela %d, hasna %d, " +"narm %d\n" + +#: froll.c:68 froll.c:78 froll.c:169 froll.c:271 froll.c:281 froll.c:362 +#: frolladaptive.c:58 frolladaptive.c:147 frolladaptive.c:247 +#: frolladaptive.c:326 +#, c-format +msgid "" +"%s: hasNA=FALSE used but NA (or other non-finite) value(s) are present in " +"input, use default hasNA=NA to avoid this warning" +msgstr "" +"%s: hasNA=FALSE usado mas valor(es) NA (ou outros não finitos) estão " +"presentes na entrada, use o padrão hasNA=NA para evitar este aviso" + +#: froll.c:71 froll.c:173 froll.c:274 froll.c:366 frolladaptive.c:61 +#: frolladaptive.c:151 frolladaptive.c:250 frolladaptive.c:330 +#, c-format +msgid "" +"%s: NA (or other non-finite) value(s) are present in input, re-running with " +"extra care for NAs\n" +msgstr "" +"%s: valor(es) NA (ou outros não finitos) estão presentes na entrada, " +"executando de novo com cuidado extra para NAs\n" + +#: froll.c:81 froll.c:284 +#, c-format +msgid "" +"%s: NA (or other non-finite) value(s) are present in input, skip non-NA " +"attempt and run with extra care for NAs\n" +msgstr "" +"%s: valor(es) NA (ou outros não finitos) estão presentes na entrada, pular " +"tentativa não-NA e rodar como cuidado extra para NAs\n" + +#: froll.c:137 froll.c:335 +#, c-format +msgid "" +"%s: running in parallel for input length %, window %d, hasna %d, " +"narm %d\n" +msgstr "" +"%s: executando em paralelo para entrada de largura %, janela %d, " +"hasna %d, narm %d\n" + +#: froll.c:175 froll.c:368 frolladaptive.c:153 frolladaptive.c:332 +#, c-format +msgid "" +"%s: NA (or other non-finite) value(s) are present in input, na.rm was FALSE " +"so in 'exact' implementation NAs were handled already, no need to re-run\n" +msgstr "" +"%s: valor(es) NA (ou outros não finitos) estão presentes na entrada e na.rm " +"foi FALSE, então a implementação 'exact' já lidou com os NAs, sem " +"necessidade de executar novamente\n" + +#: froll.c:424 +#, c-format +msgid "%s: results from provided FUN are not length 1" +msgstr "%s: resultados da FUN fornecida não são de comprimento 1" + +#: froll.c:431 +#, c-format +msgid "" +"%s: results from provided FUN are not of type double, coercion from integer " +"or logical will be applied on each iteration\n" +msgstr "" +"%s: resultados da FUN fornecida não são do tipo double, será feita coerção " +"de inteiro ou lógico em cada iteração\n" + +#: froll.c:434 +#, c-format +msgid "%s: results from provided FUN are not of type double" +msgstr "%s: resultados da FUN fornecida não são do tipo double" + +#: froll.c:463 nafill.c:87 +#, c-format +msgid "%s: took %.3fs\n" +msgstr "%s: levou %.3fs\n" + +#: frollR.c:17 +msgid "" +"x must be of type numeric or logical, or a list, data.frame or data.table of " +"such" +msgstr "" +"x deve ser do tipo numérico ou lógico, ou uma lista, data.frame ou data." +"table com colunas assim " + +#: frollR.c:37 frollR.c:242 +msgid "n must be non 0 length" +msgstr "n deve ser de comprimento não 0" + +#: frollR.c:48 +msgid "n must be integer, list is accepted for adaptive TRUE" +msgstr "n deve ser inteiro, lista é aceita para 'adaptative' TRUE" + +#: frollR.c:55 frollR.c:234 frollR.c:237 +msgid "n must be integer" +msgstr "n deve ser inteiro" + +#: frollR.c:62 +msgid "n must be positive integer values (> 0)" +msgstr "n deve ter valores inteiros positivos (> 0)" + +#: frollR.c:71 frollR.c:83 +msgid "n must be integer vector or list of integer vectors" +msgstr "n deve ser um vetor de inteiros ou uma lista de vetores de inteiros" + +#: frollR.c:97 +msgid "hasNA must be TRUE, FALSE or NA" +msgstr "hasNA deve ser TRUE, FALSE ou NA" + +#: frollR.c:99 +msgid "" +"using hasNA FALSE and na.rm TRUE does not make sense, if you know there are " +"NA values use hasNA TRUE, otherwise leave it as default NA" +msgstr "" +"usando hasNA FALSE e na.rm TRUE não faz sentido, se vocês sabe que há " +"valores NA use hasNA TRUE, ou então deixe com o padrão NA" + +#: frollR.c:109 frollR.c:141 frollR.c:163 frollR.c:253 nafill.c:170 +#, c-format +msgid "" +"Internal error: invalid %s argument in %s function should have been caught " +"earlier. Please report to the data.table issue tracker." +msgstr "" +"Erro interno: argumento %s inválido na função %s deveria ter sido capturado " +"antes. Por favor, relate isso no rastreador de problemas do data.table." + +#: frollR.c:112 +msgid "" +"using adaptive TRUE and align argument different than 'right' is not " +"implemented" +msgstr "" +"usar adaptative TRUE e argumento align diferente de 'right' não está " +"implementado" + +#: frollR.c:116 frollR.c:264 types.c:64 +#, c-format +msgid "%s: allocating memory for results %dx%d\n" +msgstr "%s: alocando memória para resultados %dx%d\n" + +#: frollR.c:125 +msgid "" +"adaptive rolling function can only process 'x' having equal length of " +"elements, like data.table or data.frame; If you want to call rolling " +"function on list having variable length of elements call it for each field " +"separately" +msgstr "" +"A função móvel adaptativa só pode processar 'x' com elementos de igual " +"comprimento, como data.table ou data.frame. Se você quiser chamar uma função " +"móvel em uma lista com elementos de comprimento variável, chame-a para cada " +"elemento separadamente" + +#: frollR.c:127 +msgid "" +"length of integer vector(s) provided as list to 'n' argument must be equal " +"to number of observations provided in 'x'" +msgstr "" +"comprimento dos vetor(es) de inteiros fornecidos como lista para argumento " +"'n' deve ser igual ao número de observações fornecidas em 'x'" + +#: frollR.c:145 frollR.c:257 gsumm.c:1193 shift.c:21 +msgid "fill must be a vector of length 1" +msgstr "fill deve ser um vetor de comprimento 1" + +#: frollR.c:147 frollR.c:259 +msgid "fill must be numeric or logical" +msgstr "fill deve ser numérico ou lógico" + +#: frollR.c:168 +#, c-format +msgid "Internal error: badaptive=%d but ik is not integer" +msgstr "Erro interno: badaptative=%d mas sei que não é inteiro" + +#: frollR.c:176 +#, c-format +msgid "" +"%s: %d column(s) and %d window(s), if product > 1 then entering parallel " +"execution\n" +msgstr "" +"%s: %d coluna(s) e %d janela(s), se produto > 1 então entrando em execução " +"paralela\n" + +#: frollR.c:178 +#, c-format +msgid "" +"%s: %d column(s) and %d window(s), not entering parallel execution here " +"because algo='exact' will compute results in parallel\n" +msgstr "" +"%s: %d coluna(s) e %d janela(s), não entrando em execução paralela aqui " +"porque algo='exact' vai computar os resultados em paralelo\n" + +#: frollR.c:197 +#, c-format +msgid "Internal error: Unknown sfun value in froll: %d" +msgstr "Erro interno: valor sfun desconhecido em froll: %d" + +#: frollR.c:205 frollR.c:296 +#, c-format +msgid "%s: processing of %d column(s) and %d window(s) took %.3fs\n" +msgstr "%s: processamento de %d coluna(s) e %d janela(s) levou %.3fs\n" + +#: frollR.c:216 +msgid "internal error: 'fun' must be a function" +msgstr "erro interno: 'fun' deve ser uma função" + +#: frollR.c:218 +msgid "internal error: 'rho' should be an environment" +msgstr "erro interno: 'rho' deve ser um ambiente" + +#: frolladaptive.c:29 frolladaptive.c:218 +#, c-format +msgid "%s: running for input length %, hasna %d, narm %d\n" +msgstr "" +"%s: execução para entrada de comprimento %, hasna %d, narm %d\n" + +#: frolladaptive.c:35 frolladaptive.c:224 +#, c-format +msgid "%s: Unable to allocate memory for cumsum" +msgstr "%s: Não foi possível alocar memória para cumsum" + +#: frolladaptive.c:71 frolladaptive.c:260 +#, c-format +msgid "%s: Unable to allocate memory for cum NA counter" +msgstr "%s: Não foi possível alocar memória para contator cumulativo de NA" + +#: frolladaptive.c:114 frolladaptive.c:298 +#, c-format +msgid "%s: running in parallel for input length %, hasna %d, narm %d\n" +msgstr "" +"%s: executando em paralelo para entrada de comprimento %, hasha %d, " +"narm %d\n" + +#: fsort.c:107 +msgid "x must be a vector of type double currently" +msgstr "x deve ser atualmente um vetor do tipo 'double'" + +#: fsort.c:118 +#, c-format +msgid "nth=%d, nBatch=%d\n" +msgstr "nth=%d, nBatch=%d\n" + +#: fsort.c:152 +#, c-format +msgid "Range = [%g,%g]\n" +msgstr "Intervalo = [%g,%g]\n" + +#: fsort.c:153 +msgid "Cannot yet handle negatives." +msgstr "Não é possível lidar com negativos." + +#: fsort.c:168 +#, c-format +msgid "maxBit=%d; MSBNbits=%d; shift=%d; MSBsize=%zu\n" +msgstr "maxBit=%d; MSBNbits=%d; shift=%d; MSBsize=%zu\n" + +#: fsort.c:174 +#, c-format +msgid "" +"counts is %dMB (%d pages per nBatch=%d, batchSize=%, " +"lastBatchSize=%)\n" +msgstr "" +"\"counts\" é %dMB (%d páginas por nBatch=%d, batchSize=%, " +"lastBatchSize=%)\n" + +#: fsort.c:228 +msgid "Internal error: counts[nBatch-1][MSBsize-1] != length(x)" +msgstr "Erro interno: counts[nBatch-1][MSBsize-1] != length(x)" + +#: fsort.c:244 +msgid "Top 20 MSB counts: " +msgstr "Maiores 20 contagens MSB: " + +#: fsort.c:244 +#, c-format +msgid "% " +msgstr "% " + +#: fsort.c:244 fwrite.c:706 +msgid "\n" +msgstr "\n" + +#: fsort.c:245 +msgid "Reduced MSBsize from %zu to " +msgstr "MSBsize reduzido de %zu para " + +#: fsort.c:249 +msgid "%zu by excluding 0 and 1 counts\n" +msgstr "%zu excluindo contagens 0 e 1\n" + +#: fsort.c:315 +#, c-format +msgid "" +"OpenMP %d did not assign threads to iterations monotonically. Please search " +"Stack Overflow for this message." +msgstr "" +"OpenMP %d não designou threads para iterações monotonicamente. Por favor, " +"pesquise no Stack Overflow para esta mensagem." + +#: fsort.c:317 +msgid "Unable to allocate working memory" +msgstr "Não foi possível alocar memória de trabalho" + +#: fsort.c:327 +#, c-format +msgid "%d: %.3f (%4.1f%%)\n" +msgstr "%d: %.3f (%4.1f%%)\n" + +#: fwrite.c:611 +#, c-format +msgid "buffMB=%d outside [1,1024]" +msgstr "buffMB=%d fora do intervalo [1,1024]" + +#: fwrite.c:618 +#, c-format +msgid "" +"eol must be 1 or more bytes (usually either \\n or \\r\\n) but is length %d" +msgstr "" +"eol deve ter 1 ou mais bytes (geralmente \\n ou \\r\\n), mas tem comprimento " +"%d" + +#: fwrite.c:621 +msgid "Column writers: " +msgstr "Escritores de colunas: " + +#: fwrite.c:623 fwrite.c:625 fwrite.c:627 +#, c-format +msgid "%d " +msgstr "%d " + +#: fwrite.c:626 +msgid "... " +msgstr "... " + +#: fwrite.c:629 +#, c-format +msgid "" +"\n" +"args.doRowNames=%d args.rowNames=%p args.rowNameFun=%d doQuote=%d args." +"nrow=% args.ncol=%d eolLen=%d\n" +msgstr "" +"\n" +"args.doRowNames=%d args.rowNames=%p args.rowNameFun=%d doQuote=%d args." +"nrow=% args.ncol=%d eolLen=%d\n" + +#: fwrite.c:664 +#, c-format +msgid "Internal error: type %d has no max length method implemented" +msgstr "" +"Erro interno: tipo %d não tem método de comprimento máximo implementado" + +#: fwrite.c:671 +#, c-format +msgid "maxLineLen=%. Found in %.3fs\n" +msgstr "maxLineLen=%. Encontrado em %.3fs\n" + +#: fwrite.c:691 +#, c-format +msgid "" +"%s: '%s'. Failed to open existing file for writing. Do you have write " +"permission to it? Is this Windows and does another process such as Excel " +"have it open?" +msgstr "" +"%s: '%s'. Falha ao abrir o arquivo existente para escrita. Você tem " +"permissão de escrita? Se estiver usando Windows, outro processo, como o " +"Excel, pode estar com o arquivo aberto?" + +#: fwrite.c:692 +#, c-format +msgid "" +"%s: '%s'. Unable to create new file for writing (it does not exist already). " +"Do you have permission to write here, is there space on the disk and does " +"the path exist?" +msgstr "" +"%s: '%s'. Não foi possível criar um novo arquivo para escrita (ele ainda não " +"existe). Você tem permissão para escrever aqui, há espaço no disco e o " +"caminho existe?" + +#: fwrite.c:699 +msgid "" +"Compression in fwrite uses zlib library. Its header files were not found at " +"the time data.table was compiled. To enable fwrite compression, please " +"reinstall data.table and study the output for further guidance." +msgstr "" +"Compressão em fwrite usa a biblioteca zlib. Seus arquivos de cabeçalho não " +"foram encontrados no momento em que o data.table foi compilado. Para " +"habilitar a compressão em fwrite, por favor, reinstale o data.table e estude " +"a saída para obter mais orientações." + +#: fwrite.c:704 +#, c-format +msgid "Writing bom (%s), yaml (%d characters) and column names (%s) ... " +msgstr "" +"Escrevendo bom (%s), yaml (%d caracteres) e nomes das colunas (%s) ... " + +#: fwrite.c:717 +#, c-format +msgid "Unable to allocate %zu MiB for header: %s" +msgstr "Não foi possível alocar %zu MiB para o cabeçalho: %s" + +#: fwrite.c:748 fwrite.c:812 +msgid "Can't allocate gzip stream structure" +msgstr "Não é possível alocar a estrutura de fluxo gzip" + +#: fwrite.c:756 +#, c-format +msgid "Unable to allocate %zu MiB for zbuffer: %s" +msgstr "Não foi possível alocar %zu MiB para o zbuffer: %s" + +#: fwrite.c:772 +#, c-format +msgid "Compress gzip error: %d" +msgstr "Erro ao comprimir gzip: %d" + +#: fwrite.c:773 fwrite.c:781 +#, c-format +msgid "%s: '%s'" +msgstr "%s: '%s'" + +#: fwrite.c:778 +#, c-format +msgid "done in %.3fs\n" +msgstr "concluído em %.3fs\n" + +#: fwrite.c:780 +msgid "No data rows present (nrow==0)\n" +msgstr "Nenhuma linha de dados presente (nrow==0)\n" + +#: fwrite.c:798 +#, c-format +msgid "" +"Writing % rows in %d batches of %d rows (each buffer size %dMB, " +"showProgress=%d, nth=%d)\n" +msgstr "" +"Escrevendo % linhas em %d lotes de %d linhas (cada buffer de " +"tamanho%dMB, showProgress=%d, nth=%d)\n" + +#: fwrite.c:814 +#, c-format +msgid "zbuffSize=%d returned from deflateBound\n" +msgstr "zbuffSize=%d retornado de deflateBound\n" + +#: fwrite.c:823 +#, c-format +msgid "" +"Unable to allocate %zu MB * %d thread buffers; '%d: %s'. Please read ?fwrite " +"for nThread, buffMB and verbose options." +msgstr "" +"Não foi possível alocar %zu MB * %d buffers de thread; '%d: %s'. Por favor, " +"leia ?fwrite para as opções nThread, buffMB e verbose." + +#: fwrite.c:834 +#, c-format +msgid "" +"Unable to allocate %zu MB * %d thread compressed buffers; '%d: %s'. Please " +"read ?fwrite for nThread, buffMB and verbose options." +msgstr "" +"Não foi possível alocar %zu MB * %d buffers comprimidos de thread; '%d: %s'. " +"Por favor, leia ?fwrite para as opções nThread, buffMB e verbose." + +#: fwrite.c:1009 +#, c-format +msgid "" +"zlib %s (zlib.h %s) deflate() returned error %d with z_stream->msg==\"%s\" " +"Z_FINISH=%d Z_BLOCK=%d. %s" +msgstr "" +"zlib %s (zlib.h %s) deflate() retornou erro %d com z_stream->msg==\"%s\" " +"Z_FINISH=%d Z_BLOCK=%d. %s" + +#: fwrite.c:1011 +msgid "" +"Please include the full output above and below this message in your data." +"table bug report." +msgstr "" +"Por favor, inclua a saída completa acima e abaixo desta mensagem no seu " +"relatório de bug do data.table." + +#: fwrite.c:1012 +msgid "" +"Please retry fwrite() with verbose=TRUE and include the full output with " +"your data.table bug report." +msgstr "" +"Por favor, tente novamente fwrite() com verbose=TRUE e inclua a saída " +"completa no seu relatório de bug do data.table." + +#: fwriteR.c:46 +msgid "Internal error: col passed to getMaxCategLen is missing levels" +msgstr "" +"Erro interno: col passado para getMaxCategLen está com níveis faltantes" + +#: fwriteR.c:80 +msgid "Internal error: getMaxListItemLen should have caught this up front." +msgstr "" +"Erro interno: getMaxListItemLen deveria ter capturado isso antecipadamente." + +#: fwriteR.c:103 +#, c-format +msgid "" +"Row % of list column is type '%s' - not yet implemented. fwrite() " +"can write list columns containing items which are atomic vectors of type " +"logical, integer, integer64, double, complex and character." +msgstr "" +"Linha % da coluna de lista é do tipo '%s' - ainda não implementado. " +"fwrite() pode escrever colunas de lista contendo itens que são vetores " +"atômicos dos tipos logical, integer, integer64, double, complex e character." + +#: fwriteR.c:108 +#, c-format +msgid "" +"Internal error: row % of list column has no max length method " +"implemented" +msgstr "" +"Erro interno: linha % da coluna de lista não tem método de " +"comprimento máximo implementado" + +#: fwriteR.c:176 +msgid "" +"fwrite must be passed an object of type list; e.g. data.frame, data.table" +msgstr "" +"fwrite deve receber um objeto do tipo list; por exemplo, data.frame, data." +"table" + +#: fwriteR.c:186 +msgid "fwrite was passed an empty list of no columns. Nothing to write." +msgstr "fwrite recebeu uma lista vazia sem colunas. Nada a escrever." + +#: fwriteR.c:241 +#, c-format +msgid "" +"Column %d's length (%d) is not the same as column 1's length (%)" +msgstr "Coluna %d tem tamanho (%d) diferente da coluna 1 (%)" + +#: fwriteR.c:245 +#, c-format +msgid "Column %d's type is '%s' - not yet implemented in fwrite." +msgstr "Coluna %d é do tipo '%s' - ainda não implementado no fwrite." + +#: fwriteR.c:268 +#, c-format +msgid "" +"input has specific integer rownames but their length (%lld) != nrow " +"(%)" +msgstr "" +"entrada tem nomes de linha inteiros específicos, mas seu comprimento (%lld) !" +"= nrow (%)" + +#: fwriteR.c:283 +msgid "" +"No list columns are present. Setting sep2='' otherwise quote='auto' would " +"quote fields containing sep2.\n" +msgstr "" +"Nenhuma coluna de lista está presente. Definindo sep2='' caso contrário, " +"quote='auto' citaria campos contendo sep2.\n" + +#: fwriteR.c:287 +#, c-format +msgid "" +"If quote='auto', fields will be quoted if the field contains either sep " +"('%c') or sep2 ('%c') because column %d is a list column.\n" +msgstr "" +"Se quote='auto', os campos serão citados se o campo contiver sep ('%c') ou " +"sep2 ('%c'), pois a coluna %d é uma coluna de lista.\n" + +#: fwriteR.c:291 +#, c-format +msgid "" +"sep ('%c'), sep2 ('%c') and dec ('%c') must all be different. Column %d is a " +"list column." +msgstr "" +"sep ('%c'), sep2 ('%c') e dec ('%c') devem ser todos diferentes. Coluna %d é " +"uma coluna de lista." + +#: gsumm.c:45 gsumm.c:46 gsumm.c:47 +#, c-format +msgid "%s is not an integer vector" +msgstr "%s não é um vetor de inteiros" + +#: gsumm.c:56 +msgid "irowsArg is neither an integer vector nor NULL" +msgstr "irowsArg não é um vetor de inteiros nem NULL" + +#: gsumm.c:58 +#, c-format +msgid "length(f)=%d != length(l)=%d" +msgstr "length(f)=%d != length(l)=%d" + +#: gsumm.c:66 +#, c-format +msgid "o has length %d but sum(l)=%d" +msgstr "o tem comprimento %d, mas sum(l)=%d" + +#: gsumm.c:69 +msgid "Internal error: o's maxgrpn attribute mismatches recalculated maxgrpn" +msgstr "" +"Erro interno: atributo maxgrpn de o não corresponde ao maxgrpn recalculado" + +#: gsumm.c:89 +#, c-format +msgid "" +"Internal error: nrow=%d ngrp=%d nbit=%d bitshift=%d highSize=%zu " +"nBatch=%zu batchSize=%zu lastBatchSize=%zu\n" +msgstr "" +"Erro interno: nrow=%d ngrp=%d nbit=%d bitshift=%d highSize=%zu " +"nBatch=%zu batchSize=%zu lastBatchSize=%zu\n" + +#: gsumm.c:98 +#, c-format +msgid "gforce initial population of grp took %.3f\n" +msgstr "população inicial de gforce do grp levou %.3f\n" + +#: gsumm.c:116 +msgid "" +"Internal error: Failed to allocate counts or TMP when assigning g in gforce" +msgstr "Erro interno: Falha ao alocar counts ou TMP ao atribuir g em gforce" + +#: gsumm.c:194 +#, c-format +msgid "gforce assign high and low took %.3f\n" +msgstr "atribuição alta e baixa do gforce levou %.3f\n" + +#: gsumm.c:200 +#, c-format +msgid "gforce eval took %.3f\n" +msgstr "gforce eval levou %.3f\n" + +#: gsumm.c:216 +msgid "gather took ... " +msgstr "gather levou ... " + +#: gsumm.c:334 +#, c-format +msgid "gather implemented for INTSXP, REALSXP, and CPLXSXP but not '%s'" +msgstr "gather implementado para INTSXP, REALSXP e CPLXSXP, mas não para '%s'" + +#: gsumm.c:336 gsumm.c:569 gsumm.c:715 +#, c-format +msgid "%.3fs\n" +msgstr "%.3fs\n" + +#: gsumm.c:346 gsumm.c:577 gsumm.c:726 gsumm.c:863 gsumm.c:1019 gsumm.c:1113 +#, c-format +msgid "%s is not meaningful for factors." +msgstr "%s não é significativo para fatores." + +#: gsumm.c:350 +#, c-format +msgid "This gsum (narm=%s) took ... " +msgstr "Este gsum (narm=%s) levou ..." + +#: gsumm.c:351 gsumm.c:585 gsumm.c:731 gsumm.c:866 gsumm.c:918 gsumm.c:1021 +#: gsumm.c:1117 +#, c-format +msgid "nrow [%d] != length(x) [%d] in %s" +msgstr "nrow [%d] != length(x) [%d] em %s" + +#: gsumm.c:405 +msgid "" +"The sum of an integer column for a group was more than type 'integer' can " +"hold so the result has been coerced to 'numeric' automatically for " +"convenience." +msgstr "" +"A soma de uma coluna de inteiros para um grupo foi maior do que o tipo " +"'integer' pode suportar, então foi feita coerção do resultado para 'numeric' " +"automaticamente por conveniência." + +#: gsumm.c:566 gsumm.c:838 gsumm.c:904 gsumm.c:1090 gsumm.c:1161 +#, c-format +msgid "" +"Type '%s' is not supported by GForce %s. Either add the prefix %s or turn " +"off GForce optimization using options(datatable.optimize=1)" +msgstr "" +"Tipo '%s' não é suportado pelo GForce %s. Adicione o prefixo %s ou desative " +"a otimização GForce usando options(datatable.optimize=1)" + +#: gsumm.c:584 +#, c-format +msgid "This gmean took (narm=%s) ... " +msgstr "Este gmean levou (narm=%s) ..." + +#: gsumm.c:619 gsumm.c:676 +#, c-format +msgid "Unable to allocate %d * %zu bytes for non-NA counts in gmean na.rm=TRUE" +msgstr "" +"Não foi possível alocar %d * %zu bytes para contagens não-NA em gmean na." +"rm=TRUE" + +#: gsumm.c:712 +#, c-format +msgid "" +"Type '%s' not supported by GForce mean (gmean). Either add the prefix base::" +"mean(.) or turn off GForce optimization using options(datatable.optimize=1)" +msgstr "" +"Tipo '%s' não é suportado pelo GForce mean (gmean). Adicione o prefixo base::" +"mean(.) ou desative a otimização GForce usando options(datatable.optimize=1)" + +#: gsumm.c:724 +msgid "" +"GForce min/max can only be applied to columns, not .SD or similar. To find " +"min/max of all items in a list such as .SD, either add the prefix base::min(." +"SD) or turn off GForce optimization using options(datatable.optimize=1). " +"More likely, you may be looking for 'DT[,lapply(.SD,min),by=,.SDcols=]'" +msgstr "" +"GForce min/max só pode ser aplicado a colunas, não a .SD ou similar. Para " +"encontrar min/max de todos os itens em uma lista, como .SD, adicione o " +"prefixo base::min(.SD) ou desative a otimização GForce usando " +"options(datatable.optimize=1). Mais provavelmente, você pode estar " +"procurando por 'DT[,lapply(.SD,min),by=,.SDcols=]'" + +#: gsumm.c:835 +msgid "Type 'complex' has no well-defined min/max" +msgstr "Tipo 'complex' não tem min/max bem definidos" + +#: gsumm.c:861 +msgid "" +"GForce median can only be applied to columns, not .SD or similar. To find " +"median of all items in a list such as .SD, either add the prefix stats::" +"median(.SD) or turn off GForce optimization using options(datatable." +"optimize=1). More likely, you may be looking for 'DT[,lapply(.SD,median)," +"by=,.SDcols=]'" +msgstr "" +"GForce median só pode ser aplicado a colunas, não a .SD ou similar. Para " +"encontrar a mediana de todos os itens em uma lista como .SD, adicione o " +"prefixo stats::median(.SD) ou desative a otimização GForce usando " +"options(datatable.optimize=1). Mais provavelmente, você pode estar " +"procurando por 'DT[,lapply(.SD,median),by=,.SDcols=]'" + +#: gsumm.c:919 +msgid "Internal error: gfirstlast headw should only be true when w>1" +msgstr "Erro interno: gfirstlast headw só deve ser true quando w>1" + +#: gsumm.c:965 +#, c-format +msgid "Internal error: unanticipated case in gfirstlast first=%d w=%d headw=%d" +msgstr "Erro interno: caso não previsto em gfirstlast first=%d w=%d headw=%d" + +#: gsumm.c:979 +#, c-format +msgid "" +"Type '%s' is not supported by GForce head/tail/first/last/`[`. Either add " +"the namespace prefix (e.g. utils::head(.)) or turn off GForce optimization " +"using options(datatable.optimize=1)" +msgstr "" +"Tipo '%s' não é suportado pelo GForce head/tail/first/last/`[`. Adicione o " +"prefixo do namespace (por exemplo, utils::head(.)) ou desative a otimização " +"GForce usando options(datatable.optimize=1)" + +#: gsumm.c:995 gsumm.c:1001 +msgid "" +"Internal error, gtail is only implemented for n>0. This should have been " +"caught before. please report to data.table issue tracker." +msgstr "" +"Erro interno, gtail só está implementado para n>0. Isso deveria ter sido " +"detectado antes. Por favor, relate isso no rastreador de problemas do data." +"table." + +#: gsumm.c:1007 +msgid "" +"Internal error, `g[` (gnthvalue) is only implemented single value subsets " +"with positive index, e.g., .SD[2]. This should have been caught before. " +"please report to data.table issue tracker." +msgstr "" +"Erro interno, `g[` (gnthvalue) só está implementado para subconjuntos de " +"valor único com índice positivo, por exemplo, .SD[2]. Isso deveria ter sido " +"detectado antes. Por favor, relate isso no rastreador de problemas do data." +"table." + +#: gsumm.c:1017 +msgid "" +"GForce var/sd can only be applied to columns, not .SD or similar. For the " +"full covariance matrix of all items in a list such as .SD, either add the " +"prefix stats::var(.SD) (or stats::sd(.SD)) or turn off GForce optimization " +"using options(datatable.optimize=1). Alternatively, if you only need the " +"diagonal elements, 'DT[,lapply(.SD,var),by=,.SDcols=]' is the optimized way " +"to do this." +msgstr "" +"GForce var/sd só pode ser aplicado a colunas, não a .SD ou similar. Para a " +"matriz de covariância completa de todos os itens em uma lista como .SD, " +"adicione o prefixo stats::var(.SD) (ou stats::sd(.SD)) ou desative a " +"otimização GForce usando options(datatable.optimize=1). Alternativamente, se " +"você precisar apenas dos elementos diagonais, 'DT[,lapply(.SD,var),by=,." +"SDcols=]' é a maneira otimizada de fazer isso." + +#: gsumm.c:1111 +msgid "" +"GForce prod can only be applied to columns, not .SD or similar. To multiply " +"all items in a list such as .SD, either add the prefix base::prod(.SD) or " +"turn off GForce optimization using options(datatable.optimize=1). More " +"likely, you may be looking for 'DT[,lapply(.SD,prod),by=,.SDcols=]'" +msgstr "" +"GForce prod só pode ser aplicado a colunas, não a .SD ou similar. Para " +"multiplicar todos os itens em uma lista como .SD, adicione o prefixo base::" +"prod(.SD) ou desative a otimização GForce usando options(datatable." +"optimize=1). Mais provavelmente, você pode estar procurando por 'DT[,lapply(." +"SD,prod),by=,.SDcols=]'" + +#: gsumm.c:1119 +#, c-format +msgid "Unable to allocate %d * %zu bytes for gprod" +msgstr "Não foi possível alocar %d * %zu bytes para gprod" + +#: gsumm.c:1188 +#, c-format +msgid "Internal error: nrow [%d] != length(x) [%d] in %s" +msgstr "Erro interno: nrow [%d] != length(x) [%d] em %s" + +#: gsumm.c:1196 gsumm.c:1201 +msgid "" +"Internal error: invalid type for gshift(), should have been caught before. " +"please report to data.table issue tracker" +msgstr "" +"Erro interno: tipo inválido para gshift(), deveria ter sido detectado " +"anteriormente. Por favor, relate isso no rastreador de problemas do data." +"table." + +#: gsumm.c:1207 +msgid "Internal error: n must be integer" +msgstr "Erro interno: n deve ser inteiro" + +#: gsumm.c:1209 shift.c:34 +#, c-format +msgid "Item %d of n is NA" +msgstr "Item %d de n é NA" + +#: gsumm.c:1266 +#, c-format +msgid "" +"Type '%s' is not supported by GForce gshift. Either add the namespace prefix " +"(e.g. data.table::shift(.)) or turn off GForce optimization using " +"options(datatable.optimize=1)" +msgstr "" +"Tipo '%s' não é suportado pelo GForce gshift. Adicione o prefixo do " +"namespace (por exemplo, data.table::shift(.)) ou desative a otimização " +"GForce usando options(datatable.optimize=1)" + +#: idatetime.c:126 vecseq.c:13 +msgid "x must be an integer vector" +msgstr "x deve ser um vetor de inteiros" + +#: idatetime.c:130 +msgid "" +"Internal error: invalid type for convertDate(), should have been caught " +"before. please report to data.table issue tracker" +msgstr "" +"Erro interno: tipo inválido para convertDate(), deveria ter sido detectado " +"antes. Por favor, relate isso no rastreador de problemas do data.table" + +#: idatetime.c:142 +msgid "" +"Internal error: invalid type for convertDate, should have been caught " +"before. please report to data.table issue tracker" +msgstr "" +"Erro interno: tipo inválido para convertDate, deveria ter sido detectado " +"antes. Por favor, relate isso no rastreador de problemas do data.table" + +#: ijoin.c:22 ijoin.c:243 +msgid "" +"Internal error: invalid value for 'mult'; this should have been caught " +"before. please report to data.table issue tracker" +msgstr "" +"Erro interno: valor inválido para 'mult'; isso deveria ter sido detectado " +"antes. Por favor, relate isso no rastreador de problemas do data.table" + +#: ijoin.c:29 ijoin.c:250 +msgid "" +"Internal error: invalid value for 'type'; this should have been caught " +"before. please report to data.table issue tracker" +msgstr "" +"Erro interno: valor inválido para 'type'; isso deveria ter sido detectado " +"antes. Por favor, relate isso no rastreador de problemas do data.table" + +#: ijoin.c:56 ijoin.c:121 +#, c-format +msgid "Internal error: unknown type in mult=%d in lookup: %d" +msgstr "Erro interno: tipo desconhecido em mult=%d na pesquisa: %d" + +#: ijoin.c:124 ijoin.c:215 +#, c-format +msgid "Internal error: unknown mult in lookup: %d" +msgstr "Erro interno: mult desconhecido na pesquisa: %d" + +#: ijoin.c:128 +#, c-format +msgid "First pass on calculating lengths in lookup ... done in %8.3f seconds\n" +msgstr "" +"Primeira passagem no cálculo de comprimentos na pesquisa. ... concluída em " +"%8.3f segundos\n" + +#: ijoin.c:141 +#, c-format +msgid "Second pass on allocation in lookup ... done in %8.3f seconds\n" +msgstr "" +"Segunda passagem na alocação na pesquisa. ... concluída em %8.3f segundos\n" + +#: ijoin.c:160 +#, c-format +msgid "Internal error: unknown type lookup should have been caught earlier: %d" +msgstr "" +"Erro interno: a pesquisa de type desconhecido deveria ter sido detectada " +"anteriormente: %d" + +#: ijoin.c:212 +#, c-format +msgid "" +"Internal error: unknown type in mult=%d in lookup should have been caught " +"earlier: %d" +msgstr "" +"Erro interno: type desconhecido na pesquisa de mult=%d deveria ter sido " +"detectado anteriormente: %d" + +#: ijoin.c:220 +#, c-format +msgid "Final step in generating lookup ... done in %8.3f seconds\n" +msgstr "Etapa final na geração da pesquisa... concluída em %8.3f segundos\n" + +#: ijoin.c:325 +#, c-format +msgid "Internal error: unknown type in mult=ALL in overlaps: %d" +msgstr "Erro interno: tipo desconhecido em mult=ALL em sobreposições: %d" + +#: ijoin.c:330 +#, c-format +msgid "" +"First pass on calculating lengths in overlaps ... done in %8.3f seconds\n" +msgstr "" +"Primeira passagem no cálculo de comprimentos em sobreposições ... concluída " +"em %8.3f segundos\n" + +#: ijoin.c:466 ijoin.c:573 ijoin.c:722 +#, c-format +msgid "Internal error: unknown type in mult=%d in overlaps: %d" +msgstr "Erro interno: tipo desconhecido em mult=%d em sobreposições: %d" + +#: ijoin.c:725 +#, c-format +msgid "Internal error: unknown mult in overlaps: %d" +msgstr "Erro interno: mult desconhecido em sobreposições: %d" + +#: ijoin.c:729 +#, c-format +msgid "Final step, fetching indices in overlaps ... done in %8.3f seconds\n" +msgstr "" +"Etapa final, busca de índices em sobreposições ... concluída em %8.3f " +"segundos\n" + +#: init.c:165 +msgid "" +"Pointers are %zu bytes, greater than 8. We have not tested on any " +"architecture greater than 64bit yet." +msgstr "" +"Ponteiros têm %zu bytes, maior que 8. Ainda não testamos em nenhuma " +"arquitetura maior que 64 bits." + +#: init.c:179 +msgid "... failed. Please forward this message to maintainer('data.table')." +msgstr "" +"... falhou. Por favor, encaminhe esta mensagem para o maintainer('data." +"table')." + +#: init.c:180 +#, c-format +msgid "Checking NA_INTEGER [%d] == INT_MIN [%d] %s" +msgstr "Verificando se NA_INTEGER [%d] == INT_MIN [%d] %s" + +#: init.c:181 +#, c-format +msgid "Checking NA_INTEGER [%d] == NA_LOGICAL [%d] %s" +msgstr "Verificando se NA_INTEGER [%d] == NA_LOGICAL [%d] %s" + +#: init.c:182 init.c:183 init.c:185 init.c:188 init.c:189 init.c:190 init.c:191 +#: init.c:192 init.c:193 init.c:194 +#, c-format +msgid "Checking sizeof(%s) [%zu] is %d %s" +msgstr "Verificando se sizeof(%s) [%zu] é %d %s" + +#: init.c:186 +#, c-format +msgid "Checking sizeof(pointer) [%zu] is 4 or 8 %s" +msgstr "Verificando se sizeof(pointer) [%zu] é 4 ou 8 %s" + +#: init.c:187 +#, c-format +msgid "Checking sizeof(SEXP) [%zu] == sizeof(pointer) [%zu] %s" +msgstr "Verificando se sizeof(SEXP) [%zu] == sizeof(pointer) [%zu] %s" + +#: init.c:197 +#, c-format +msgid "Checking LENGTH(allocVector(INTSXP,2)) [%d] is 2 %s" +msgstr "Verificando se LENGTH(allocVector(INTSXP,2)) [%d] é 2 %s" + +#: init.c:199 +#, c-format +msgid "Checking TRUELENGTH(allocVector(INTSXP,2)) [%lld] is 0 %s" +msgstr "Verificando se TRUELENGTH(allocVector(INTSXP,2)) [%lld] é 0 %s" + +#: init.c:206 +#, c-format +msgid "Checking memset(&i,0,sizeof(int)); i == (int)0 %s" +msgstr "Verificando se memset(&i,0,sizeof(int)); i == (int)0 %s" + +#: init.c:209 +#, c-format +msgid "Checking memset(&ui, 0, sizeof(unsigned int)); ui == (unsigned int)0 %s" +msgstr "" +"Verificando se memset(&ui, 0, sizeof(unsigned int)); ui == (unsigned int)0 %s" + +#: init.c:212 +#, c-format +msgid "Checking memset(&d, 0, sizeof(double)); d == (double)0.0 %s" +msgstr "Verificando se memset(&d, 0, sizeof(double)); d == (double)0.0 %s" + +#: init.c:215 +#, c-format +msgid "Checking memset(&ld, 0, sizeof(long double)); ld == (long double)0.0 %s" +msgstr "" +"Verificando se memset(&ld, 0, sizeof(long double)); ld == (long double)0.0 %s" + +#: init.c:218 +msgid "The ascii character '/' is not just before '0'" +msgstr "O caractere ASCII '/' não está logo antes de '0'" + +#: init.c:219 +msgid "The C expression (uint_fast8_t)('/'-'0')<10 is true. Should be false." +msgstr "" +"A expressão em C (uint_fast8_t)('/'-'0')<10 é verdadeira. Deveria ser falsa." + +#: init.c:220 +msgid "The ascii character ':' is not just after '9'" +msgstr "O caractere ASCII ':' não está logo após '9'" + +#: init.c:221 +msgid "The C expression (uint_fast8_t)('9'-':')<10 is true. Should be false." +msgstr "" +"A expressão em C (uint_fast8_t)('9'-':')<10 é verdadeira. Deveria ser falsa." + +#: init.c:226 +#, c-format +msgid "Conversion of NA_INT64 via double failed %!=%" +msgstr "A conversão de NA_INT64 via double falhou %!=%" + +#: init.c:230 +msgid "NA_INT64_D (negative -0.0) is not == 0.0." +msgstr "NA_INT64_D (negativo -0.0) não é == 0.0." + +#: init.c:231 +msgid "NA_INT64_D (negative -0.0) is not ==-0.0." +msgstr "NA_INT64_D (negativo -0.0) não é == -0.0." + +#: init.c:232 +msgid "ISNAN(NA_INT64_D) is TRUE but should not be" +msgstr "ISNAN(NA_INT64_D) é TRUE, mas não deveria ser" + +#: init.c:233 +msgid "isnan(NA_INT64_D) is TRUE but should not be" +msgstr "isnan(NA_INT64_D) é TRUE, mas não deveria ser" + +#: init.c:266 +#, c-format +msgid "PRINTNAME(install(\"integer64\")) has returned %s not %s" +msgstr "PRINTNAME(install(\"integer64\")) retornou %s não %s" + +#: init.c:320 +msgid "verbose option must be length 1 non-NA logical or integer" +msgstr "A opção verbose deve ter comprimento 1 não-NA lógico ou inteiro" + +#: init.c:354 +msgid ".Last.value in namespace is not a length 1 integer" +msgstr ".Last.value no namespace não é um inteiro de comprimento 1" + +#: nafill.c:110 +msgid "" +"'x' argument is atomic vector, in-place update is supported only for list/" +"data.table" +msgstr "" +"argumento 'x' é um vetor atômico, a atualização no local é suportada apenas " +"para list/data.table" + +#: nafill.c:112 nafill.c:123 +msgid "'x' argument must be numeric type, or list/data.table of numeric types" +msgstr "" +"argumento 'x' deve ser do tipo numérico ou uma lista/data.table de tipos " +"numéricos" + +#: nafill.c:179 +msgid "fill must be a vector of length 1 or a list of length of x" +msgstr "" +"fill deve ser um vetor de comprimento 1 ou uma lista de comprimento igual a x" + +#: nafill.c:187 +msgid "internal error: 'fill' should be recycled as list already" +msgstr "erro interno: 'fill' deveria ser já reciclado como lista" + +#: nafill.c:226 +#, c-format +msgid "%s: parallel processing of %d column(s) took %.3fs\n" +msgstr "%s: processamento paralelo de %d coluna(s) levou %.3fs\n" + +#: openmp-utils.c:23 +#, c-format +msgid "" +"Ignoring invalid %s==\"%s\". Not an integer >= 1. Please remove any " +"characters that are not a digit [0-9]. See ?data.table::setDTthreads." +msgstr "" +"Ignorando %s==\"%s\" inválido. Não é um inteiro >= 1. Por favor, remova " +"quaisquer caracteres que não sejam um dígito [0-9]. Veja ?data.table::" +"setDTthreads." + +#: openmp-utils.c:44 +#, c-format +msgid "" +"Ignoring invalid R_DATATABLE_NUM_PROCS_PERCENT==%d. If used it must be an " +"integer between 2 and 100. Default is 50. See ?setDTtheads." +msgstr "" +"Ignorando R_DATATABLE_NUM_PROCS_PERCENT==%d inválido. Se usado, deve ser um " +"inteiro entre 2 e 100. O padrão é 50. Veja ?setDTthreads." + +#: openmp-utils.c:82 +msgid "" +"This installation of data.table has not been compiled with OpenMP support.\n" +msgstr "" +"Esta instalação do data.table não foi compilada com suporte a OpenMP.\n" + +#: openmp-utils.c:84 +#, c-format +msgid " OpenMP version (_OPENMP) %d\n" +msgstr " Versão do OpenMP (_OPENMP) %d\n" + +#: openmp-utils.c:89 +#, c-format +msgid " omp_get_num_procs() %d\n" +msgstr " omp_get_num_procs() %d\n" + +#: openmp-utils.c:90 +#, c-format +msgid " R_DATATABLE_NUM_PROCS_PERCENT %s\n" +msgstr " R_DATATABLE_NUM_PROCS_PERCENT %s\n" + +#: openmp-utils.c:91 +#, c-format +msgid " R_DATATABLE_NUM_THREADS %s\n" +msgstr " R_DATATABLE_NUM_THREADS %s\n" + +#: openmp-utils.c:92 +#, c-format +msgid " R_DATATABLE_THROTTLE %s\n" +msgstr " R_DATATABLE_THROTTLE %s\n" + +#: openmp-utils.c:93 +#, c-format +msgid " omp_get_thread_limit() %d\n" +msgstr " omp_get_thread_limit() %d\n" + +#: openmp-utils.c:94 +#, c-format +msgid " omp_get_max_threads() %d\n" +msgstr " omp_get_max_threads() %d\n" + +#: openmp-utils.c:95 +#, c-format +msgid " OMP_THREAD_LIMIT %s\n" +msgstr " OMP_THREAD_LIMIT %s\n" + +#: openmp-utils.c:96 +#, c-format +msgid " OMP_NUM_THREADS %s\n" +msgstr " OMP_NUM_THREADS %s\n" + +#: openmp-utils.c:97 +#, c-format +msgid " RestoreAfterFork %s\n" +msgstr " RestoreAfterFork %s\n" + +#: openmp-utils.c:98 +#, c-format +msgid "" +" data.table is using %d threads with throttle==%d. See ?setDTthreads.\n" +msgstr "" +" data.table está usando %d threads com throttle==%d. Veja ?setDTthreads.\n" + +#: openmp-utils.c:106 +msgid "" +"restore_after_fork= must be TRUE, FALSE, or NULL (default). " +"getDTthreads(verbose=TRUE) reports the current setting.\n" +msgstr "" +"restore_after_fork= deve ser TRUE, FALSE ou NULL (padrão). " +"getDTthreads(verbose=TRUE) relata a configuração atual.\n" + +#: openmp-utils.c:112 +msgid "'throttle' must be a single number, non-NA, and >=1" +msgstr "'throttle' deve ser um único número, não-NA e >=1" + +#: openmp-utils.c:126 +msgid "" +"threads= must be either NULL or a single number >= 0. See ?setDTthreads." +msgstr "threads= deve ser NULL ou um único número >= 0. Veja ?setDTthreads." + +#: openmp-utils.c:130 +msgid "Internal error: percent= must be TRUE or FALSE at C level" +msgstr "Erro interno: percent= deve ser TRUE ou FALSE no nível C" + +#: openmp-utils.c:133 +#, c-format +msgid "" +"Internal error: threads==%d should be between 2 and 100 (percent=TRUE at C " +"level)." +msgstr "" +"Erro interno: threads==%d deve estar entre 2 e 100 (percent=TRUE no nível C)." + +#: programming.c:16 +#, c-format +msgid "" +"Attempting to substitute '%s' element with object of type '%s' but it has to " +"be 'symbol' type when substituting name of the call argument, functions 'as." +"name' and 'I' can be used to work out proper substitution, see ?substitute2 " +"examples." +msgstr "" +"Tentativa de substituir o elemento '%s' com um objeto do tipo '%s', mas ele " +"precisa ser do tipo 'symbol' quando substituir o nome do argumento da " +"chamada. As funções 'as.name' e 'I' podem ser usadas para determinar a " +"substituição adequada. Veja os exemplos em ?substitute2." + +#: rbindlist.c:10 +msgid "use.names= should be TRUE, FALSE, or not used (\"check\" by default)" +msgstr "use.names= deve ser TRUE, FALSE ou não usado (\"check\" por padrão)" + +#: rbindlist.c:12 +msgid "" +"Input to rbindlist must be a list. This list can contain data.tables, data." +"frames or plain lists." +msgstr "" +"Entrada para rbindlist deve ser uma lista. Esta lista pode conter data." +"tables, data.frames ou listas simples." + +#: rbindlist.c:19 +msgid "Internal error: rbindlist.c idcol is not a single string" +msgstr "Erro interno: rbindlist.c idcol não é uma string única" + +#: rbindlist.c:30 +#, c-format +msgid "Item %d of input is not a data.frame, data.table or list" +msgstr "Item %d da entrada não é um data.frame, data.table ou lista" + +#: rbindlist.c:38 +#, c-format +msgid "" +"Item %d has %d columns, inconsistent with item %d which has %d columns. To " +"fill missing columns use fill=TRUE." +msgstr "" +"Item %d tem %d colunas, inconsistente com o item %d que tem %d colunas. Para " +"preencher colunas ausentes, use fill=TRUE." + +#: rbindlist.c:41 +#, c-format +msgid "Item %d has %d columns but %d column names. Invalid object." +msgstr "Item %d tem %d colunas, mas %d nomes de colunas. Objeto inválido." + +#: rbindlist.c:48 +#, c-format +msgid "" +"Column %d of item %d is length %d inconsistent with column %d which is " +"length %d. Only length-1 columns are recycled." +msgstr "" +"Coluna %d do item %d tem comprimento %d inconsistente com a coluna %d que " +"tem comprimento %d. Apenas colunas de comprimento 1 são recicladas." + +#: rbindlist.c:57 +#, c-format +msgid "" +"Column %d ['%s'] of item %d is length 0. This (and %d other%s like it) has " +"been filled with NA (NULL for list columns) to make each item uniform." +msgstr "" +"Coluna %d ['%s'] do item %d tem comprimento 0. Esta (e %d outra%s como ela) " +"foi preenchida com NA (NULL para colunas de lista) para tornar cada item " +"uniforme." + +#: rbindlist.c:61 +#, c-format +msgid "" +"Total rows in the list is % which is larger than the maximum number " +"of rows, currently %d" +msgstr "" +"Total de linhas na lista é %, que é maior que o número máximo de " +"linhas, atualmente %d" + +#: rbindlist.c:62 +msgid "use.names=TRUE but no item of input list has any names" +msgstr "use.names=TRUE, mas nenhum item da lista de entrada possui nomes" + +#: rbindlist.c:70 +#, c-format +msgid "" +"Failed to allocate upper bound of % unique column names " +"[sum(lapply(l,ncol))]" +msgstr "" +"Falha ao alocar o limite superior de % nomes de colunas exclusivos " +"[sum(lapply(l,ncol))]" + +#: rbindlist.c:101 +#, c-format +msgid "Failed to allocate nuniq=%d items working memory in rbindlist.c" +msgstr "Falha ao alocar nuniq=%d itens de memória de trabalho em rbindlist.c" + +#: rbindlist.c:135 +#, c-format +msgid "Failed to allocate ncol=%d items working memory in rbindlist.c" +msgstr "Falha ao alocar ncol=%d itens de memória de trabalho em rbindlist.c" + +#: rbindlist.c:190 +msgid "" +"Internal error: usenames==NA but fill=TRUE. usenames should have been set to " +"TRUE earlier with warning." +msgstr "" +"Erro interno: usenames==NA, mas fill=TRUE. usenames deveria ter sido " +"definido como TRUE anteriormente com um aviso." + +#: rbindlist.c:195 +msgid "" +" use.names='check' (default from v1.12.2) emits this message and proceeds as " +"if use.names=FALSE for backwards compatibility. See news item 5 in v1.12.2 " +"for options to control this message." +msgstr "" +" use.names='check' (padrão a partir da v1.12.2) emite esta mensagem e " +"prossegue como se use.names=FALSE para compatibilidade retroativa. Veja o " +"item 5 das notícias em v1.12.2 para opções de controle desta mensagem." + +#: rbindlist.c:205 +msgid "" +"Internal error: could not find the first column name not present in earlier " +"item" +msgstr "" +"Erro interno: não foi possível encontrar o primeiro nome de coluna ausente " +"no item anterior" + +#: rbindlist.c:209 +#, c-format +msgid "" +"Column %d ['%s'] of item %d is missing in item %d. Use fill=TRUE to fill " +"with NA (NULL for list columns), or use.names=FALSE to ignore column names.%s" +msgstr "" +"Coluna %d ['%s'] do item %d está ausente no item %d. Use fill=TRUE para " +"preencher com NA (NULL para colunas de lista) ou use.names=FALSE para " +"ignorar os nomes das colunas.%s" + +#: rbindlist.c:217 +#, c-format +msgid "" +"Internal error: usenames==NA but an out-of-order name has been found in an " +"item with no names or the first item. [%d]" +msgstr "" +"Erro interno: usenames==NA, mas um nome fora de ordem foi encontrado em um " +"item sem nomes ou no primeiro item. [%d]" + +#: rbindlist.c:218 +#, c-format +msgid "" +"Column %d ['%s'] of item %d appears in position %d in item %d. Set use." +"names=TRUE to match by column name, or use.names=FALSE to ignore column " +"names.%s" +msgstr "" +"Coluna %d ['%s'] do item %d aparece na posição %d no item %d. Defina use." +"names=TRUE para corresponder pelo nome da coluna ou use.names=FALSE para " +"ignorar os nomes das colunas.%s" + +#: rbindlist.c:227 +msgid "" +"options()$datatable.rbindlist.check is set but is not a single string. See " +"news item 5 in v1.12.2." +msgstr "" +"options()$datatable.rbindlist.check está definido, mas não é uma string " +"única. Veja o item 5 das notícias em v1.12.2." + +#: rbindlist.c:234 +#, c-format +msgid "" +"options()$datatable.rbindlist.check=='%s' which is not " +"'message'|'warning'|'error'|'none'. See news item 5 in v1.12.2." +msgstr "" +"options()$datatable.rbindlist.check=='%s', que não é " +"'message'|'warning'|'error'|'none'. Veja o item 5 das notícias em v1.12.2." + +#: rbindlist.c:297 +#, c-format +msgid "" +"Column %d of item %d has type 'factor' but has no levels; i.e. malformed." +msgstr "" +"Coluna %d do item %d é do tipo 'factor', mas não tem níveis; ou seja, está " +"malformada." + +#: rbindlist.c:315 +#, c-format +msgid "" +"Class attribute on column %d of item %d does not match with column %d of " +"item %d." +msgstr "" +"Atributo de classe na coluna %d do item %d não corresponde à coluna %d do " +"item %d." + +#: rbindlist.c:325 +#, c-format +msgid "" +"Internal error: column %d of result is determined to be integer64 but " +"maxType=='%s' != REALSXP" +msgstr "" +"Erro interno: coluna %d do resultado foi determinada como integer64, mas " +"maxType=='%s' != REALSXP" + +#: rbindlist.c:362 +#, c-format +msgid "" +"Failed to allocate working memory for %d ordered factor levels of result " +"column %d" +msgstr "" +"Falha ao alocar memória de trabalho para %d níveis de fator ordenado da " +"coluna de resultado %d" + +#: rbindlist.c:384 +#, c-format +msgid "" +"Column %d of item %d is an ordered factor but level %d ['%s'] is missing " +"from the ordered levels from column %d of item %d. Each set of ordered " +"factor levels should be an ordered subset of the first longest. A regular " +"factor will be created for this column." +msgstr "" +"Coluna %d do item %d é um fator ordenado, mas o nível %d ['%s'] está ausente " +"nos níveis ordenados da coluna %d do item %d. Cada conjunto de níveis de " +"fator ordenado deve ser um subconjunto ordenado do primeiro e mais longo. Um " +"fator regular será criado para esta coluna." + +#: rbindlist.c:389 +#, c-format +msgid "" +"Column %d of item %d is an ordered factor with '%s'<'%s' in its levels. But " +"'%s'<'%s' in the ordered levels from column %d of item %d. A regular factor " +"will be created for this column due to this ambiguity." +msgstr "" +"Coluna %d do item %d é um fator ordenado com '%s'<'%s' em seus níveis. Mas " +"'%s'<'%s' nos níveis ordenados da coluna %d do item %d. Um fator regular " +"será criado para esta coluna devido a essa ambiguidade." + +#: rbindlist.c:434 +#, c-format +msgid "" +"Failed to allocate working memory for %d factor levels of result column %d " +"when reading item %d of item %d" +msgstr "" +"Falha ao alocar memória de trabalho para %d níveis de fator da coluna de " +"resultado %d ao ler o item %d do item %d" + +#: rbindlist.c:524 +#, c-format +msgid "Column %d of item %d: %s" +msgstr "Coluna %d do item %d: %s" + +#: reorder.c:17 +#, c-format +msgid "Item %d of list is type '%s' which isn't yet supported (SIZEOF=%zu)" +msgstr "" +"Item %d da lista é do tipo '%s', que ainda não é suportado (SIZEOF=%zu)" + +#: reorder.c:19 +#, c-format +msgid "" +"Column %d is length %d which differs from length of column 1 (%d). Invalid " +"data.table." +msgstr "" +"Coluna %d tem comprimento %d, o que difere do comprimento da coluna 1 (%d). " +"data.table inválida." + +#: reorder.c:27 +#, c-format +msgid "" +"reorder accepts vectors but this non-VECSXP is type '%s' which isn't yet " +"supported (SIZEOF=%zu)" +msgstr "" +"reorder aceita vetores, mas este não-VECSXP é do tipo '%s', que ainda não é " +"suportado (SIZEOF=%zu)" + +#: reorder.c:28 +msgid "" +"Internal error in reorder.c: cannot reorder an ALTREP vector. Please see " +"NEWS item 2 in v1.11.4 and report this as a bug." +msgstr "" +"Erro interno em reorder.c: não é possível reordenar um vetor ALTREP. Por " +"favor, veja o item 2 nas noticias da v1.11.4 e reporte isso como um bug." + +#: reorder.c:33 +msgid "order must be an integer vector" +msgstr "order deve ser um vetor de inteiros" + +#: reorder.c:34 +#, c-format +msgid "nrow(x)[%d]!=length(order)[%d]" +msgstr "nrow(x)[%d]!=length(order)[%d]" + +#: reorder.c:51 +#, c-format +msgid "" +"Item %d of order (%d) is either NA, out of range [1,%d], or is duplicated. " +"The new order must be a strict permutation of 1:n" +msgstr "" +"Item %d da ordem (%d) é NA ou, está fora do intervalo [1,%d], ou está " +"duplicado. A nova ordem deve ser uma permutação estrita de 1:n" + +#: reorder.c:111 +msgid "dt passed to setcolorder has no names" +msgstr "dt passada para setcolorder não tem nomes" + +#: reorder.c:113 +#, c-format +msgid "Internal error: dt passed to setcolorder has %d columns but %d names" +msgstr "Erro interno: dt passada para setcolorder tem %d colunas, mas %d nomes" + +#: shift.c:12 +msgid "" +"shift input must not be matrix or array, consider wrapping it into data." +"table() or c()" +msgstr "" +"entrada de shift não deve ser uma matriz ou array, considere envolvê-la em " +"data.table() ou c()" + +#: shift.c:17 +#, c-format +msgid "" +"type '%s' passed to shift(). Must be a vector, list, data.frame or data.table" +msgstr "" +"tipo '%s' passado para shift(). Deve ser um vetor, lista, data.frame ou data." +"table" + +#: shift.c:24 shift.c:29 +msgid "" +"Internal error: invalid type for shift(), should have been caught before. " +"please report to data.table issue tracker" +msgstr "" +"Erro interno: tipo inválido para shift(), deveria ter sido detectado " +"anteriormente. Por favor, relate isso no rastreador de problemas do data." +"table." + +#: shift.c:32 +msgid "Internal error: k must be integer" +msgstr "Erro interno: k deve ser um número inteiro" + +#: snprintf.c:192 snprintf.c:195 snprintf.c:198 snprintf.c:201 snprintf.c:204 +#: snprintf.c:207 snprintf.c:210 snprintf.c:213 snprintf.c:216 snprintf.c:220 +#: snprintf.c:223 snprintf.c:226 snprintf.c:229 snprintf.c:232 snprintf.c:235 +#: snprintf.c:238 snprintf.c:241 snprintf.c:244 +#, c-format +msgid "dt_win_snprintf test %d failed: %s" +msgstr "teste %d dt_win_snprintf falhou: %s" + +#: snprintf.c:217 +#, c-format +msgid "dt_win_snprintf test %d failed: %d" +msgstr "teste %d dt_win_snprintf falhou: %d" + +#: subset.c:7 +#, c-format +msgid "Internal error: subsetVectorRaw length(ans)==%d n=%d" +msgstr "Erro interno: subsetVectorRaw length(ans)==%d n=%d" + +#: subset.c:101 +#, c-format +msgid "" +"Internal error: column type '%s' not supported by data.table subset. All " +"known types are supported so please report as bug." +msgstr "" +"Erro interno: tipo de coluna '%s' não suportado pelo subconjunto do data." +"table. Todos os tipos conhecidos são suportados, por favor, reporte isso " +"como um bug." + +#: subset.c:135 +#, c-format +msgid "Internal error. 'idx' is type '%s' not 'integer'" +msgstr "Erro interno. 'idx' é do tipo '%s' não 'integer'" + +#: subset.c:136 +#, c-format +msgid "" +"Internal error. 'maxArg' is type '%s' and length %d, should be an integer " +"singleton" +msgstr "" +"Erro interno. 'maxArg' é do tipo '%s' e comprimento %d, deveria ser um " +"inteiro singleton" + +#: subset.c:137 +msgid "Internal error: allowOverMax must be TRUE/FALSE" +msgstr "Erro interno: allowOverMax deve ser TRUE/FALSE" + +#: subset.c:139 +#, c-format +msgid "Internal error. max is %d, must be >= 0." +msgstr "Erro interno. max é %d, deve ser >= 0." + +#: subset.c:140 +msgid "Internal error: allowNAArg must be TRUE/FALSE" +msgstr "Erro interno: allowNAArg deve ser TRUE/FALSE" + +#: subset.c:177 +#, c-format +msgid "" +"Item %d of i is %d and item %d is %d. Cannot mix positives and negatives." +msgstr "" +"Item %d de i é %d e o item %d é %d. Não é possível misturar positivos e " +"negativos." + +#: subset.c:187 +#, c-format +msgid "Item %d of i is %d and item %d is NA. Cannot mix negatives and NA." +msgstr "" +"Item %d de i é %d e o item %d é NA. Não é possível misturar NA e negativos." + +#: subset.c:234 +#, c-format +msgid "" +"Item %d of i is %d but there are only %d rows. Ignoring this and %d more " +"like it out of %d." +msgstr "" +"Item %d de i é %d, mas há apenas %d linhas. Ignorando este e %d mais como " +"ele, de um total de %d." + +#: subset.c:236 +#, c-format +msgid "" +"Item %d of i is %d which removes that item but that has occurred before. " +"Ignoring this dup and %d other dups." +msgstr "" +"Item %d de i é %d o que remove esse item, mas isso já ocorreu antes. " +"Ignorando esta duplicata e %d outras duplicatas." + +#: subset.c:250 +#, c-format +msgid "Column %d is NULL; malformed data.table." +msgstr "Coluna %d é NULL; data.table malformada." + +#: subset.c:253 +#, c-format +msgid "Column %d ['%s'] is a data.frame or data.table; malformed data.table." +msgstr "" +"Coluna %d ['%s'] é um data.frame ou uma data.table; data.table malformada." + +#: subset.c:258 +#, c-format +msgid "" +"Column %d ['%s'] is length %d but column 1 is length %d; malformed data." +"table." +msgstr "" +"Coluna %d ['%s'] tem comprimento %d, mas a coluna 1 tem comprimento %d; data." +"table malformada." + +#: subset.c:290 +#, c-format +msgid "Item %d of cols is %d which is outside the range [1,ncol(x)=%d]" +msgstr "Item %d de cols é %d, que está fora do intervalo [1, ncol(x)=%d]" + +#: subset.c:364 +msgid "" +"Internal error: NULL can not be subset. It is invalid for a data.table to " +"contain a NULL column." +msgstr "" +"Erro interno: NULL não pode ser subconjunto. É inválido para uma data.table " +"conter uma coluna NULL." + +#: subset.c:366 +msgid "" +"Internal error: CsubsetVector is internal-use-only but has received " +"negatives, zeros or out-of-range" +msgstr "" +"Erro interno: CsubsetVector é de uso interno apenas, mas recebeu valores " +"negativos, zeros ou fora do intervalo" + +#: transpose.c:9 +msgid "l must be a list." +msgstr "l deve ser uma lista." + +#: transpose.c:13 +msgid "ignore.empty should be logical TRUE/FALSE." +msgstr "ignore.empty deve ser lógico TRUE/FALSE." + +#: transpose.c:16 +msgid "" +"keep.names should be either NULL, or the name of the first column of the " +"result in which to place the names of the input" +msgstr "" +"keep.names deve ser NULL ou o nome da primeira coluna do resultado no qual e " +"colocado os nomes da entrada." + +#: transpose.c:19 +msgid "fill must be a length 1 vector, such as the default NA" +msgstr "fill deve ser um vetor de comprimento 1, como o padrão NA" + +#: transpose.c:22 +msgid "list.cols should be logical TRUE/FALSE." +msgstr "list.cols deveria ser lógico TRUE/FALSE." + +#: transpose.c:31 +#, c-format +msgid "Item %d of list input is not either an atomic vector, or a list" +msgstr "Item %d da lista de entrada não é nem um vetor atômico, nem uma lista" + +#: types.c:55 +msgid "internal error: status, nx, nk must be integer" +msgstr "erro interno: status, nx, nk devem ser inteiros" + +#: uniqlist.c:14 +msgid "Internal error: uniqlist has not been passed a list of columns" +msgstr "Erro interno: uniqlist recebeu uma lista de colunas" + +#: uniqlist.c:17 +msgid "Internal error: uniqlist has been passed a non-integer order" +msgstr "Erro interno: uniqlist recebeu uma ordem não de inteiro" + +#: uniqlist.c:18 +msgid "Internal error: uniqlist has been passed a length-0 order" +msgstr "Erro interno: uniqlist recebeu uma ordem de comprimento 0" + +#: uniqlist.c:19 +#, c-format +msgid "Internal error: uniqlist has been passed length(order)==%d but nrow==%d" +msgstr "Erro interno: uniqlist recebeu length(order)==%d, mas nrow==%d" + +#: uniqlist.c:151 +msgid "Input argument 'x' to 'uniqlengths' must be an integer vector" +msgstr "" +"Argumento de entrada 'x' para 'uniqlengths' deve ser um vetor de inteiros" + +#: uniqlist.c:152 +msgid "" +"Input argument 'n' to 'uniqlengths' must be an integer vector of length 1" +msgstr "" +"Argumento de entrada 'n' para 'uniqlengths' deve ser um vetor de inteiros de " +"comprimento 1" + +#: uniqlist.c:170 uniqlist.c:267 +msgid "cols must be an integer vector with length >= 1" +msgstr "cols deve ser um vetor de inteiros com comprimento >= 1" + +#: uniqlist.c:174 +#, c-format +msgid "Item %d of cols is %d which is outside the range [1,length(l)=%d]" +msgstr "Item %d de cols é %d, que está fora do intervalo [1, length(l)=%d]" + +#: uniqlist.c:177 +#, c-format +msgid "" +"All elements to input list must be of same length. Element [%d] has length " +"% != length of first element = %." +msgstr "" +"Todos os elementos da lista de entrada devem ter o mesmo comprimento. " +"Elemento [%d] tem comprimento % != comprimento do primeiro elemento " +"= %." + +#: uniqlist.c:258 +msgid "Internal error: nestedid was not passed a list length 1 or more" +msgstr "" +"Erro interno: nestedid não recebeu uma lista com comprimento 1 ou maior" + +#: uniqlist.c:265 +#, c-format +msgid "Internal error: nrows[%d]>0 but ngrps==0" +msgstr "Erro interno: nrows[%d]>0, mas ngrps==0" + +#: uniqlist.c:352 +msgid "x is not a logical vector" +msgstr "x não é um vetor lógico" + +#: utils.c:85 +#, c-format +msgid "Unsupported type '%s' passed to allNA()" +msgstr "Tipo não suportado '%s' passado para allNA()" + +#: utils.c:105 +msgid "'x' argument must be data.table compatible" +msgstr "argumento 'x' deve ser compatível com data.table" + +#: utils.c:129 +msgid "" +"argument specifying columns is type 'double' and one or more items in it are " +"not whole integers" +msgstr "" +"argumento que especifica colunas é do tipo 'double' e um ou mais itens nele " +"não são inteiros completos" + +#: utils.c:135 +#, c-format +msgid "" +"argument specifying columns received non-existing column(s): cols[%d]=%d" +msgstr "" +"argumento que especifica colunas recebeu coluna(s) inexistentes: cols[%d]=%d" + +#: utils.c:142 +msgid "'x' argument data.table has no names" +msgstr "data.table do argumento 'x' não possui nomes" + +#: utils.c:148 +#, c-format +msgid "" +"argument specifying columns received non-existing column(s): cols[%d]='%s'" +msgstr "" +"argumento que especifica colunas recebeu coluna(s) inexistentes: " +"cols[%d]='%s'" + +#: utils.c:152 +msgid "argument specifying columns must be character or numeric" +msgstr "argumento que especifica colunas deve ser caractere ou numérico" + +#: utils.c:155 +msgid "argument specifying columns received duplicate column(s)" +msgstr "argumento que especifica colunas recebeu coluna(s) duplicadas." + +#: utils.c:240 +#, c-format +msgid "Internal error: type '%s' not supported in %s" +msgstr "Erro interno: tipo '%s' não suportado em %s" + +#: utils.c:245 +#, c-format +msgid "Internal error: copyAsPlain returning ALTREP for type '%s'" +msgstr "Erro interno: copyAsPlain retornando ALTREP para o tipo'%s'" + +#: utils.c:289 +#, c-format +msgid "Found and copied %d column%s with a shared memory address\n" +msgstr "" +"Encontrada(s) e copiada(s) %d coluna%s com um endereço de memória " +"compartilhado\n" + +#: utils.c:369 +msgid "'x' is not atomic" +msgstr "'x' não é atômico" + +#: utils.c:371 +msgid "'x' must not be matrix or array" +msgstr "'x' não deve ser uma matriz ou array" + +#: utils.c:373 +msgid "input must not be matrix or array" +msgstr "entrada não deve ser uma matriz ou array" + +#: utils.c:377 +#, c-format +msgid "copy=false and input already of expected type and class %s[%s]\n" +msgstr "copy=false e a entrada já é do tipo e classe esperados %s[%s]\n" + +#: utils.c:384 +#, c-format +msgid "Coercing %s[%s] into %s[%s]\n" +msgstr "Faça coerção de %s[%s] para %s[%s]\n" + +#: utils.c:400 +#, c-format +msgid "zlib header files were not found when data.table was compiled" +msgstr "" +"arquivos de cabeçalho zlib não foram encontrados quando o data.table foi " +"compilado" + +#: vecseq.c:14 +msgid "len must be an integer vector" +msgstr "len deve ser um vetor de inteiros" + +#: vecseq.c:15 +msgid "x and len must be the same length" +msgstr "x e len devem ter o mesmo comprimento" + +#: vecseq.c:21 +msgid "" +"Join results in more than 2^31 rows (internal vecseq reached physical " +"limit). Very likely misspecified join. Check for duplicate key values in i " +"each of which join to the same group in x over and over again. If that's ok, " +"try by=.EACHI to run j for each group to avoid the large allocation. " +"Otherwise, please search for this error message in the FAQ, Wiki, Stack " +"Overflow and data.table issue tracker for advice." +msgstr "" +"A junção resulta em mais de 2^31 linhas (vecseq interno atingiu o limite " +"físico). Muito provavelmente, a junção foi especificada incorretamente. " +"Verifique se há valores de chave duplicados em i, cada um dos quais se junta " +"ao mesmo grupo em x repetidamente. Se estiver correto, tente by=.EACHI para " +"executar j para cada grupo e evitar uma grande alocação. Caso contrário, por " +"favor, procure esta mensagem de erro no FAQ, Wiki, Stack Overflow e " +"rastreador de problemas do data.table para obter conselhos." + +#: vecseq.c:25 +msgid "clamp must be a double vector length 1" +msgstr "clamp deve ser um vetor de double de comprimento 1" + +#: vecseq.c:27 +msgid "clamp must be positive" +msgstr "clamp deve ser positivo" + +#: vecseq.c:28 +#, c-format +msgid "" +"Join results in %d rows; more than %d = nrow(x)+nrow(i). Check for duplicate " +"key values in i each of which join to the same group in x over and over " +"again. If that's ok, try by=.EACHI to run j for each group to avoid the " +"large allocation. If you are sure you wish to proceed, rerun with allow." +"cartesian=TRUE. Otherwise, please search for this error message in the FAQ, " +"Wiki, Stack Overflow and data.table issue tracker for advice." +msgstr "" +"A junção resulta em %d linhas, o que é mais do que %d = nrow(x) + nrow(i). " +"Verifique se há valores de chave duplicados em i, cada um dos quais se junta " +"ao mesmo grupo em x repetidamente. Se estiver correto, tente by=.EACHI para " +"executar j para cada grupo e evitar uma grande alocação. Se tiver certeza de " +"que deseja continuar, execute novamente com allow.cartesian=TRUE. Caso " +"contrário, procure esta mensagem de erro no FAQ, Wiki, Stack Overflow e " +"rastreador de problemas do data.table para obter conselhos." + +#: wrappers.c:11 +msgid "Attribute name must be a character vector of length 1" +msgstr "O nome do atributo deve ser um vetor de caracteres de comprimento 1" + +#: wrappers.c:16 +msgid "" +"Internal structure doesn't seem to be a list. Can't set class to be 'data." +"table' or 'data.frame'. Use 'as.data.table()' or 'as.data.frame()' methods " +"instead." +msgstr "" +"A estrutura interna não parece ser uma lista. Não é possível definir a " +"classe como 'data.table' ou 'data.frame'. Use os métodos 'as.data.table()' " +"ou'as.data.frame()' em vez disso." + +#: wrappers.c:66 +msgid "First argument to setlistelt must be a list()" +msgstr "O primeiro argumento para setlistelt deve ser list()" + +#: wrappers.c:67 +msgid "Second argument to setlistelt must a length 1 integer vector" +msgstr "" +"O segundo argumento para setlistelt deve ser um vetor de inteiros de " +"comprimento 1" + +#: wrappers.c:69 +#, c-format +msgid "i (%d) is outside the range of items [1,%d]" +msgstr "i (%d) está fora do intervalo de items [1,%d]" + +#: wrappers.c:91 +msgid "x isn't a VECSXP" +msgstr "x não é um VECSXP" + +#: wrappers.c:106 +#, c-format +msgid "" +"dim.data.table expects a data.table as input (which is a list), but seems to " +"be of type %s" +msgstr "" +"dim.data.table espera uma data.table como entrada (que é uma lista), mas " +"parece ser do tipo %s" diff --git a/src/assign.c b/src/assign.c index 3b7ac5faa..d937601eb 100644 --- a/src/assign.c +++ b/src/assign.c @@ -151,10 +151,7 @@ static SEXP shallow(SEXP dt, SEXP cols, R_len_t n) // where n is set to truelength (i.e. a shallow copy only with no size change) int protecti=0; SEXP newdt = PROTECT(allocVector(VECSXP, n)); protecti++; // to do, use growVector here? - SET_ATTRIB(newdt, shallow_duplicate(ATTRIB(dt))); - SET_OBJECT(newdt, OBJECT(dt)); - if (isS4(dt)) newdt = asS4(newdt, TRUE, 1); // To support S4 objects that include data.table - //SHALLOW_DUPLICATE_ATTRIB(newdt, dt); // SHALLOW_DUPLICATE_ATTRIB would be a bit neater but is only available from R 3.3.0 + SHALLOW_DUPLICATE_ATTRIB(newdt, dt); // TO DO: keepattr() would be faster, but can't because shallow isn't merely a shallow copy. It // also increases truelength. Perhaps make that distinction, then, and split out, but marked @@ -1247,7 +1244,8 @@ void savetl_init(void) { nalloc = 100; saveds = (SEXP *)malloc(nalloc * sizeof(SEXP)); savedtl = (R_len_t *)malloc(nalloc * sizeof(R_len_t)); - if (saveds==NULL || savedtl==NULL) { + if (!saveds || !savedtl) { + free(saveds); free(savedtl); savetl_end(); // # nocov error(_("Failed to allocate initial %d items in savetl_init"), nalloc); // # nocov } diff --git a/src/bmerge.c b/src/bmerge.c index 2ce69904e..6cb20c683 100644 --- a/src/bmerge.c +++ b/src/bmerge.c @@ -129,8 +129,6 @@ SEXP bmerge(SEXP idt, SEXP xdt, SEXP icolsArg, SEXP xcolsArg, SEXP isorted, SEXP retFirst = Calloc(anslen, int); // anslen is set above retLength = Calloc(anslen, int); retIndex = Calloc(anslen, int); - if (retFirst==NULL || retLength==NULL || retIndex==NULL) - error(_("Internal error in allocating memory for non-equi join")); // # nocov // initialise retIndex here directly, as next loop is meant for both equi and non-equi joins for (int j=0; j A(TL=1),B(2),C(3),D(4),E(5) => dupMap 1 2 3 5 6 | 8 7 4 // dupLink 7 8 | 6 (blank=0) - int *counts = (int *)calloc(nuniq, sizeof(int)); unsigned int mapsize = tablelen+nuniq; // lto compilation warning #5760 // +nuniq to store a 0 at the end of each group + int *counts = (int *)calloc(nuniq, sizeof(int)); int *map = (int *)calloc(mapsize, sizeof(int)); if (!counts || !map) { + free(counts); free(map); // # nocov start for (int i=0; imax) max=maxs[i]; } + free(mins); free(maxs); if (verbose) Rprintf(_("Range = [%g,%g]\n"), min, max); if (min < 0.0) error(_("Cannot yet handle negatives.")); // TODO: -0ULL should allow negatives @@ -256,7 +262,7 @@ SEXP fsort(SEXP x, SEXP verboseArg) { // each thread has its own small stack of counts // don't use VLAs here: perhaps too big for stack yes but more that VLAs apparently fail with schedule(dynamic) uint64_t *restrict mycounts = calloc((toBit/8 + 1)*256, sizeof(uint64_t)); - if (mycounts==NULL) { + if (!mycounts) { failed=true; alloc_fail=true; // # nocov } double *restrict myworking = NULL; @@ -283,7 +289,7 @@ SEXP fsort(SEXP x, SEXP verboseArg) { if (myworking==NULL) { myworking = malloc(thisN * sizeof(double)); - if (myworking==NULL) { + if (!myworking) { failed=true; alloc_fail=true; continue; // # nocov } myfirstmsb = msb; diff --git a/src/fwrite.c b/src/fwrite.c index 40831089c..cd9ef98ee 100644 --- a/src/fwrite.c +++ b/src/fwrite.c @@ -715,7 +715,8 @@ void fwriteMain(fwriteMainArgs args) } if (headerLen) { char *buff = malloc(headerLen); - if (!buff) STOP(_("Unable to allocate %zu MiB for header: %s"), headerLen / 1024 / 1024, strerror(errno)); + if (!buff) + STOP(_("Unable to allocate %zu MiB for header: %s"), headerLen / 1024 / 1024, strerror(errno)); char *ch = buff; if (args.bom) {*ch++=(char)0xEF; *ch++=(char)0xBB; *ch++=(char)0xBF; } // 3 appears above (search for "bom") memcpy(ch, args.yaml, yamlLen); @@ -830,8 +831,8 @@ void fwriteMain(fwriteMainArgs args) } char *zbuffPool = NULL; if (args.is_gzip) { - zbuffPool = malloc(nth*(size_t)zbuffSize); #ifndef NOZLIB + zbuffPool = malloc(nth*(size_t)zbuffSize); if (!zbuffPool) { // # nocov start free(buffPool); @@ -847,7 +848,9 @@ void fwriteMain(fwriteMainArgs args) int failed_write = 0; // same. could use +ve and -ve in the same code but separate it out to trace Solaris problem, #3931 #ifndef NOZLIB - z_stream thread_streams[nth]; + z_stream *thread_streams = (z_stream *)malloc(nth * sizeof(z_stream)); + if (!thread_streams) + STOP(_("Failed to allocated %d bytes for '%s'."), (int)(nth * sizeof(z_stream)), "thread_streams"); // VLA on stack should be fine for nth structs; in zlib v1.2.11 sizeof(struct)==112 on 64bit // not declared inside the parallel region because solaris appears to move the struct in // memory when the #pragma omp for is entered, which causes zlib's internal self reference @@ -986,7 +989,10 @@ void fwriteMain(fwriteMainArgs args) } } free(buffPool); +#ifndef NOZLIB + free(thread_streams); free(zbuffPool); +#endif // Finished parallel region and can call R API safely now. if (hasPrinted) { diff --git a/src/gsumm.c b/src/gsumm.c index 52dca111b..7607f4258 100644 --- a/src/gsumm.c +++ b/src/gsumm.c @@ -113,7 +113,10 @@ SEXP gforce(SEXP env, SEXP jsub, SEXP o, SEXP f, SEXP l, SEXP irowsArg) { //Rprintf(_("When assigning grp[o] = g, highSize=%d nb=%d bitshift=%d nBatch=%d\n"), highSize, nb, bitshift, nBatch); int *counts = calloc(nBatch*highSize, sizeof(int)); // TODO: cache-line align and make highSize a multiple of 64 int *TMP = malloc(nrow*2l*sizeof(int)); // must multiple the long int otherwise overflow may happen, #4295 - if (!counts || !TMP ) error(_("Internal error: Failed to allocate counts or TMP when assigning g in gforce")); + if (!counts || !TMP ) { + free(counts); free(TMP); + error(_("Internal error: Failed to allocate counts or TMP when assigning g in gforce")); + } #pragma omp parallel for num_threads(getDTthreads(nBatch, false)) // schedule(dynamic,1) for (int b=0; b0) savetl(s);