From 77ba20e4eaf8edb90421207b76d4c483bd77e52f Mon Sep 17 00:00:00 2001 From: Michael Chirico Date: Fri, 26 Jul 2024 17:59:18 -0700 Subject: [PATCH] Update Chinese translations for release (#6281) * initial update of zh_CN .po files * Remove/migrate(with fuzzy) deprecated R messages * Remove deprecated C messages * Quick stab at fuzzy R messages * updated fuzzy messages * remove fuzzies * mistaken commit of temp file * spurious fuzzy * inferred update * remove fuzzy * message not present in 'master' * Translations for zh_CN.po Work was done in collaboration with my good friend Andy! Co-authored-by: YuMing Chen * slight error in variable ordering * last translations/fuzzies --------- Co-authored-by: joshhwuu Co-authored-by: YuMing Chen --- po/R-zh_CN.po | 897 ++++++++++++++++++++++--------------------- po/zh_CN.po | 1002 ++++++++++++++++++++++++++----------------------- 2 files changed, 997 insertions(+), 902 deletions(-) diff --git a/po/R-zh_CN.po b/po/R-zh_CN.po index 5e29eee029..532654b9c3 100644 --- a/po/R-zh_CN.po +++ b/po/R-zh_CN.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: data.table 1.12.5\n" -"POT-Creation-Date: 2023-12-28 12:46+0000\n" +"POT-Creation-Date: 2024-06-23 12:07-0300\n" "PO-Revision-Date: 2019-11-16 18:37+0800\n" "Last-Translator: Xianying Tan \n" "Language-Team: Mandarin\n" @@ -129,7 +129,8 @@ msgid "" "'between' function the 'x' argument is a POSIX class while '%s' was not, " "coercion to POSIX failed with: %s" msgstr "" -"'between' 中的 'x' 参数为 POSIX 类,而 '%s' 并不是,将其强制转换成 POSIX 时失败:%s" +"'between' 中的 'x' 参数为 POSIX 类,而 '%s' 并不是,将其强制转换成 POSIX 时失" +"败:%s" #: between.R:27 #, c-format @@ -145,8 +146,9 @@ msgstr "" msgid "" "'between' arguments are all POSIXct but have mismatched tzone attributes: " "%s. The UTC times will be compared." -msgstr "'between' 的参数均为 POSIXct 类型但时区属性(tzone)不匹配:" -"%s。将使用 UTC 时间进行比较。" +msgstr "" +"'between' 的参数均为 POSIXct 类型但时区属性(tzone)不匹配:%s。将使用 UTC 时" +"间进行比较。" #: between.R:36 #, c-format @@ -228,42 +230,54 @@ msgstr "不等长联结还不能执行 roll " msgid "Column name '_nqgrp_' is reserved for non-equi joins." msgstr "列名 '_nqgrp_' 是为不等长联结保留的" -#: data.table.R:63 +#: data.table.R:55 #, c-format msgid "key argument of data.table() must be character" msgstr "data.table() 的key参数必须是字符" -#: data.table.R:132 +#: data.table.R:123 #, c-format msgid "Object '%s' not found. Perhaps you intended %s" msgstr "对象 '%s' 不存在, 可能你打算 %s" -#: data.table.R:134 +#: data.table.R:125 #, c-format msgid "Object '%s' not found amongst %s" msgstr "%2$s 中对象 '%1$s' 不存在" -#: data.table.R:157 +#: 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 "" +"[ 在不支持 data.table 的环境中对 data.table 进行调用 (例如 cedta()),但" +"使用了 '%s',这意味着该调用者确实打算调用 data.table 方法。有关正确导入" +" data.table 的详细信息,请参阅 vignette('datatable-importing')。" + +#: data.table.R:152 #, c-format msgid "verbose must be logical or integer" msgstr "verbose必须是一个逻辑向量" -#: data.table.R:158 +#: data.table.R:153 #, c-format msgid "verbose must be length 1 non-NA" msgstr "verbose 的长度必须是 1 和不NA" -#: data.table.R:166 +#: data.table.R:161 #, c-format msgid "Ignoring by/keyby because 'j' is not supplied" msgstr "因为没有提供 j= ,所以忽略 by/keyby" -#: data.table.R:180 +#: data.table.R:175 #, c-format msgid "When by and keyby are both provided, keyby must be TRUE or FALSE" msgstr "当 by 和 keyby 都提供的时候,keyby 必须是 TRUE 或 FALSE" -#: data.table.R:192 +#: data.table.R:187 #, c-format msgid "" "When on= is provided but not i=, on= must be a named list or data.table|" @@ -273,19 +287,19 @@ msgstr "" "当提供 on= 而不提供 i= 的时候, on= 必须是带名称的 list 或者 data.table 或者 " "data.frame,并且会调用自然联结(例如,按照共有名称联结),忽略 on= %s" -#: data.table.R:205 +#: 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 和 j 都缺少的时候忽略其他参数。将来此警告信息将升级为错误信息。" -#: data.table.R:209 +#: data.table.R:204 #, c-format msgid "mult argument can only be 'first', 'last' or 'all'" msgstr "mult 参数只能赋值为 'first', 'last' 或 'all'" -#: data.table.R:211 +#: data.table.R:206 #, c-format msgid "" "roll must be a single TRUE, FALSE, positive/negative integer/double " @@ -294,103 +308,109 @@ msgstr "" "roll 必须是单个参数,例如 TRUE, FALSE, 正或负的 integer 或 double包括 " "+Inf , -Inf 或 'nearest'" -#: data.table.R:213 +#: data.table.R:208 #, c-format msgid "roll is '%s' (type character). Only valid character value is 'nearest'." msgstr "roll 是 '%s'(字符类型)。 唯一有效的字符值是'nearest'。" -#: data.table.R:218 +#: data.table.R:213 #, c-format msgid "rollends must be a logical vector" msgstr "rollends必须是一个逻辑向量" -#: data.table.R:219 +#: data.table.R:214 #, c-format msgid "rollends must be length 1 or 2" msgstr "rollends 的长度必须是 1 或者 2" -#: data.table.R:227 +#: 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= 必须是 NA 或 NULL (或者在向后兼容的情形下为 0,这等同于 NULL但是请用 NULL)" +msgstr "" +"nomatch= 必须是 NA 或 NULL (或者在向后兼容的情形下为 0,这等同于 NULL但是请" +"用 NULL)" -#: data.table.R:230 +#: data.table.R:225 #, c-format msgid "which= must be a logical vector length 1. Either FALSE, TRUE or NA." msgstr "which= 必须是一个长度为 1 的逻辑向量。其取值为 FALSE,TRUE 或者 NA。" -#: data.table.R:231 +#: 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 (表示行数会被返回) 但是 j 也被提供了。你可能需要行数或者是 j 的结果,但是只能" -"返回一种结果。" +"which==%s (表示行数会被返回) 但是 j 也被提供了。你可能需要行数或者是 j 的结" +"果,但是只能返回一种结果。" -#: data.table.R:232 +#: 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 和 nomatch=0或NULL 会得到一个空向量。请改变或者是移除 which或 " -"nomatch 的取值" +"同时使用 which=NA 和 nomatch=0或NULL 会得到一个空向量。请改变或者是移除 which" +"或 nomatch 的取值" -#: data.table.R:233 +#: data.table.R:228 #, c-format msgid "j must be provided when with=FALSE" msgstr "如果with=FALSE(假),j必须要赋值" -#: data.table.R:273 +#: data.table.R:268 #, c-format msgid "" "The symbol .. is invalid. The .. prefix must be followed by at least one " "character." msgstr "符号 .. 是无效的。前缀 .. 之后必须要有至少一个字符" -#: data.table.R:276 +#: 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 "变量 '%s' 并不存在于调用环境中。所以请移除在调用环境中那个变量名字的..前缀" +msgstr "" +"变量 '%s' 并不存在于调用环境中。所以请移除在调用环境中那个变量名字的..前缀" -#: data.table.R:280 +#: 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 "变量 '%s' 并没有存在于调用环境中。之所以在调用环境中寻找是因为你使用了..的前缀.%s" +msgstr "" +"变量 '%s' 并没有存在于调用环境中。之所以在调用环境中寻找是因为你使用了..的前" +"缀.%s" -#: data.table.R:282 +#: 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 "'%1$s'和'..%1$s'均在当前调用环境中。为清晰起见,请移除在调用环境中名为" -"..%1$s' 的变量。" +msgstr "" +"'%1$s'和'..%1$s'均在当前调用环境中。为清晰起见,请移除在调用环境中名为.." +"%1$s' 的变量。" -#: data.table.R:288 +#: data.table.R:283 #, c-format msgid "" "Internal error: DT[, ..var] should be dealt with by the branch above now." msgstr "内部错误: DT[, ..var]应该被分支处理中。" -#: data.table.R:290 +#: 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 "" -"变量 '%s' 并没有存在于调用环境中。之所以在调用环境中搜索是因为你使用了with=FALSE。请" -"使用 .. 符号前缀并且移除 with=FALSE。" +"变量 '%s' 并没有存在于调用环境中。之所以在调用环境中搜索是因为你使用了" +"with=FALSE。请使用 .. 符号前缀并且移除 with=FALSE。" -#: data.table.R:298 +#: data.table.R:293 #, c-format msgid "" "You have wrapped := with {} which is ok but then := must be the only thing " @@ -402,7 +422,7 @@ msgstr "" "试将 {} 置于 := 的RHS之上;比如,DT[,someCol:={tmpVar1<-...; tmpVar2<-...; " "tmpVar1*tmpVar2}" -#: data.table.R:318 +#: data.table.R:313 #, c-format msgid "" ":= with keyby is only possible when i is not supplied since you can't setkey " @@ -411,12 +431,12 @@ msgstr "" ":=和keyby的组合只有在i没有赋值下才合理存在。因为你不能在一个行的子集调用" "setkey。要么把keyby换成by或者是移除i" -#: data.table.R:320 +#: data.table.R:315 #, c-format msgid "nomatch isn't relevant together with :=, ignoring nomatch" msgstr "nomatch 并不和 := 有任何的相关,将忽略nomatch" -#: data.table.R:376 +#: data.table.R:371 #, c-format msgid "" "not-join '!' prefix is present on i but nomatch is provided. Please remove " @@ -424,7 +444,7 @@ msgid "" msgstr "" "not-join '!' 前缀在 i 中存在,但是 nomatch 也被提供了。需要移除nomatch。" -#: data.table.R:405 +#: data.table.R:400 #, c-format msgid "" "Operator := detected in i, the first argument inside DT[...], but is only " @@ -438,12 +458,12 @@ msgstr "" "(如错误地将 [DT , new_var := 5] 写作 DT[newvar := 5])。请再次检查语法是否正" "确。运行 trackback(),和 debugger() 来获取发生错误的行号。" -#: data.table.R:416 +#: data.table.R:411 #, c-format msgid "'%s' is not found in calling scope and it is not a column name either" msgstr "'%s' 既不存在于调用环境中,也非列名。" -#: data.table.R:419 +#: data.table.R:414 #, c-format msgid "" "'%s' is not found in calling scope, but it is a column of type %s. If you " @@ -455,16 +475,16 @@ msgstr "" "TRUE 值的列中的行,或者选择本身包含行号的列中的行,尝试 DT[(col)]、" "DT[DT$col],或者 DT[col==TRUE],它们表意非常清晰且效率高。" -#: data.table.R:422 +#: 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。 当DT[...]的第一个参数是一个单个的符号(e.g. DT[var]),data.table会在调用环境中" -"搜寻var。" +"%s。 当DT[...]的第一个参数是一个单个的符号(e.g. DT[var]),data.table会在调用" +"环境中搜寻var。" -#: data.table.R:434 +#: data.table.R:429 #, c-format msgid "" "i is invalid type (matrix). Perhaps in future a 2 column matrix could return " @@ -476,7 +496,7 @@ msgstr "" "DT (请参考问答集2.14的A[B])。如果你有需求,请将此问题汇报给data.table 问题追" "踪器或者是在FR中留下你的想法" -#: data.table.R:457 +#: data.table.R:452 #, c-format msgid "" "When i is a data.table (or character vector), the columns to join by must be " @@ -490,32 +510,32 @@ msgstr "" "setkey),或者是在x和i共用列的名字(比如,自然连接)。如果x有在内存被排序过,键" "(keyed)连接的速度会在非常大的数据上有较明显的提高。" -#: data.table.R:465 +#: data.table.R:460 #, c-format msgid "Attempting to do natural join but no common columns in provided tables" msgstr "尝试进行自然连接然而并没有找到表格中相同的列" -#: data.table.R:543 +#: data.table.R:538 #, c-format msgid "Internal error. Cannot by=.EACHI when joining to an index, yet" msgstr "内部错误:目前尚无法对索引(index)使用by=.EACH命令" -#: data.table.R:546 +#: data.table.R:541 #, c-format msgid "Internal error. irows has length in by=.EACHI" msgstr "内部错误:by=.EACHI 中 irows 有长度" -#: data.table.R:597 +#: data.table.R:592 #, c-format msgid "logical error. i is not a data.table, but 'on' argument is provided." msgstr "逻辑错误。当 i 并非一个 data.table时,不应提供'on'参数" -#: data.table.R:601 +#: data.table.R:596 #, c-format msgid "i has evaluated to type %s. Expecting logical, integer or double." msgstr "经计算 i 为 %s 类型。需要布尔类型,整型或浮点型。" -#: data.table.R:605 +#: data.table.R:600 #, c-format msgid "" "internal error: notjoin and which=NA (non-matches), huh? please provide " @@ -524,7 +544,7 @@ msgstr "" "内部错误:notjoin 并且 which=NA (非匹配)?请提供可重现的例子给问题追踪器" "(issue tracker)" -#: data.table.R:623 +#: data.table.R:618 #, c-format msgid "" "i evaluates to a logical vector length %d but there are %d rows. Recycling " @@ -532,23 +552,24 @@ msgid "" "rare convenience. Explicitly use rep(...,length=.N) if you really need to " "recycle." msgstr "" -"经计算 i 为长度为 %d 的逻辑向量,但数据框有 %d 行。循环补齐" -"循环补齐逻辑向量 i 的特性虽然在少数情况下使用方便,但这种行为会隐藏更多的 bug," -"因此现已不被允许。若确实需要循环补齐,请直接使用 rep(...,length=.N)。" +"经计算 i 为长度为 %d 的逻辑向量,但数据框有 %d 行。循环补齐循环补齐逻辑向量 " +"i 的特性虽然在少数情况下使用方便,但这种行为会隐藏更多的 bug,因此现已不被允" +"许。若确实需要循环补齐,请直接使用 rep(...,length=.N)。" -#: data.table.R:626 +#: 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 "" "请使用 nomatch=NULL 而非 nomatch=0;参见 v1.12.0 (2019年1月) 中更新条目 5" -#: data.table.R:639 +#: data.table.R:634 #, c-format msgid "Internal error: notjoin but byjoin or !integer or nomatch==NA" msgstr "内部错误。原因可能为:notjoin 而非 byjoin;非整数;nomatch 为空" -#: data.table.R:699 +#: data.table.R:694 #, c-format msgid "" "with=FALSE together with := was deprecated in v1.9.4 released Oct 2014. " @@ -560,41 +581,41 @@ msgstr "" "侧部分打上括号;例如,DT[,(myVar):=sum(b),by=a]对 myVar 中的列名进行赋值。输" "入 ?':=' 参看其他的例子。正如2014年的版本中所说明的,现在这种用法会出现警告。" -#: data.table.R:702 +#: data.table.R:697 #, c-format msgid "" "with=FALSE ignored, it isn't needed when using :=. See ?':=' for examples." msgstr "" "当使用 :=. 的时候,with=FALSE 是多余的,会被忽略。输入 ?':=' 参看例子。" -#: data.table.R:726 +#: data.table.R:721 #, c-format msgid "column(s) not removed because not found: %s" msgstr "列未被删除因为不存在:%s" -#: data.table.R:740 +#: data.table.R:735 #, c-format msgid "column(s) not found: %s" msgstr "列不存在: %s" -#: data.table.R:746 +#: data.table.R:741 #, c-format msgid "Item %d of j is %d which is outside the column number range [1,ncol=%d]" msgstr "j 中的第 %d 项的数值为 %d,已超出列索引的范围内1,ncol=%d]" -#: data.table.R:749 +#: data.table.R:744 #, c-format msgid "j mixes positives and negatives" msgstr "j 中同时存在正数和负数" -#: data.table.R:757 +#: 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 "当 with=FALSE,参数 j 必须为布尔型/字符型/整型之一,表征要选择的列。" -#: data.table.R:771 +#: data.table.R:766 #, c-format msgid "" "'by' contains .I but only the following are currently supported: by=.I, by=." @@ -602,33 +623,22 @@ msgid "" msgstr "" "'by' 包含 .I,但目前仅支持以下用法:by=.I、by=.(.I)、by=c(.I)、by=list(.I)" -#: data.table.R:795 +#: data.table.R:790 #, c-format msgid "by=c(...), key(...) or names(...) must evaluate to 'character'" msgstr "by=c(...), key(...) 或 names(...) 只接受 'character' " -#: data.table.R:805 +#: data.table.R:806 #, c-format -msgid "" -"'by' is a character vector length %d but one or more items include a comma. " -"Either pass a vector of column names (which can contain spaces, but no " -"commas), or pass a vector length 1 containing comma separated column names. " -"See ?data.table for other possibilities." -msgstr "" -"'by' 为长度为 %d 的字符串向量,但是其中一个或多个元素包含逗号。请传入一个由列" -"名组成的向量(可以包含空格,但是不能" "包含逗号),或传入一个长度为 1 的由逗" -"号分隔列名字符串入。可通过 ?data.table 查看其他可能选项。" - -#: data.table.R:812 msgid "At least one entry of by is empty" msgstr "至少有一个 by 的元素为空" -#: data.table.R:853 +#: data.table.R:847 #, c-format msgid "Internal error: irows isn't integer" msgstr "内部错误:irows 不是整型" -#: data.table.R:887 +#: data.table.R:881 #, c-format msgid "" "'by' appears to evaluate to column names but isn't c() or key(). Use " @@ -639,7 +649,7 @@ msgstr "" "by=list(...)。其他情况,by=eval(%s) 应该均可成功运行。执行上述检查是出于运行" "效率原因,以确保 data.table 能够检测计算时所需使用的列。" -#: data.table.R:898 +#: data.table.R:892 #, c-format msgid "" "'by' or 'keyby' must evaluate to a vector or a list of vectors (where 'list' " @@ -648,7 +658,7 @@ msgstr "" "'by' 或者 'keyby' 参数只接受一个向量或由向量组成的列表(这里 'list'包含 data." "table 和 data.frame,这二者本质也是列表" -#: data.table.R:902 +#: data.table.R:896 #, c-format msgid "" "Column or expression %d of 'by' or 'keyby' is type '%s' which is not " @@ -658,11 +668,11 @@ msgid "" "toString), whilst taking care to maintain distinctness in the process." msgstr "" "列或表达式 %d 的 'by' 或 'keyby' 为 '%s' 类型,目前并不支持。如确实需要该功" -"能,请在 https://github.com/Rdatatable/data.table/issues/1597 中提出。" -"暂时的解决办法是,将列转换为支持的类型,例如 by=sapply(list_col, toString)," -"同时请确保在转换后其值仍保持不同。" +"能,请在 https://github.com/Rdatatable/data.table/issues/1597 中提出。暂时的" +"解决办法是,将列转换为支持的类型,例如 by=sapply(list_col, toString),同时请" +"确保在转换后其值仍保持不同。" -#: data.table.R:906 +#: data.table.R:900 #, c-format msgid "" "The items in the 'by' or 'keyby' list are length(s) %s. Each must be length " @@ -672,17 +682,17 @@ msgstr "" "在'by'或'keyby'列表中的项长度为 %s 。每一项的长度须均为%d,即应与 x (或经 i " "筛选后的子集)中所包含行数相同。" -#: data.table.R:940 +#: data.table.R:934 #, c-format msgid "Internal error: drop_dot passed %d items" msgstr "内部错误:drop_dot 传入的参数有 %d" -#: data.table.R:959 +#: data.table.R:953 #, c-format msgid "Item %d of the .() or list() passed to j is missing" msgstr "传递给j的 .() 或 list()中第%d项缺失" -#: data.table.R:965 +#: data.table.R:959 #, c-format msgid "" "j may not evaluate to the same number of columns for each group; if you're " @@ -692,7 +702,7 @@ msgstr "" "j 在每个组中可能不会计算出相同的列数;如果您确定该警告信息是错误的,请将分支" "逻辑放在 [ 之外以提高运行效率" -#: data.table.R:967 +#: data.table.R:961 #, c-format msgid "" "Different branches of j expression produced different auto-named columns: " @@ -702,12 +712,12 @@ msgid "" "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 "" -"j 表达式的不同分支产生了不同的自动命名列:%s;将使用“最后”一个得到的名字。" -"如果这是有意为之(如,您知道在给定的查询中只有一个分支会被使用,因为该分支" -"由函数参数控制),请(1)将该分支从调用中分离出来;(2)在所有情况下为每个分" -"支提供缺失的默认值;或(3)为每个分支使用相同的名字,并在后续调用中重新命名。" +"j 表达式的不同分支产生了不同的自动命名列:%s;将使用“最后”一个得到的名字。如" +"果这是有意为之(如,您知道在给定的查询中只有一个分支会被使用,因为该分支由函" +"数参数控制),请(1)将该分支从调用中分离出来;(2)在所有情况下为每个分支提" +"供缺失的默认值;或(3)为每个分支使用相同的名字,并在后续调用中重新命名。" -#: data.table.R:1030 +#: data.table.R:1031 #, c-format msgid "" "When .SDcols is a function, it is applied to each column; the output of this " @@ -717,44 +727,44 @@ msgstr "" "当传入 .SDcols 的参数为一个方程时,该方程将应用于每一列,并须返回单个非缺失值" "的布尔值指示该列是否应当被包含/排除。然而上述条件对如下列并不满足:%s" -#: data.table.R:1036 +#: data.table.R:1037 #, c-format msgid ".SDcols missing at the following indices: %s" msgstr ".SDcols 的如下位置为缺失值:%s" -#: data.table.R:1038 +#: data.table.R:1039 #, c-format msgid ".SDcols is a logical vector length %d but there are %d columns" msgstr ".SDcols 为长度为 %d 的逻辑向量,但共计只有 %d 列" -#: data.table.R:1044 +#: data.table.R:1045 #, c-format msgid ".SDcols is numeric but has both +ve and -ve indices" msgstr ".SDcols 为数值,但同时具有 +ve 和 -ve 索引" -#: data.table.R:1046 +#: data.table.R:1047 #, c-format msgid ".SDcols is numeric but out of bounds [1, %d] at: %s" msgstr ".SDcols 为数值但在 %2$s 超出了 [1, %1$d]" -#: data.table.R:1050 +#: data.table.R:1051 #, c-format msgid ".SDcols should be column numbers or names" msgstr ".SDcols 应为列数或是列名" -#: data.table.R:1052 +#: data.table.R:1053 #, c-format msgid "Some items of .SDcols are not column names: %s" msgstr ".SDcols 中的部份项目不是列名: %s" -#: data.table.R:1094 +#: data.table.R:1095 #, c-format msgid "" "This j doesn't use .SD but .SDcols has been supplied. Ignoring .SDcols. See ?" "data.table." msgstr "此处 j 不使用 .SD 但提供了 .SDcols ,因此忽略 .SDcols详见 ?data.table" -#: data.table.R:1110 +#: data.table.R:1111 #, c-format msgid "" ".SD is locked. Using := in .SD's j is reserved for possible future use; a " @@ -764,32 +774,47 @@ msgstr "" ".SD 已锁定,在 .SD 的 j 中使用 := 进行分组修改是较不直观的方式此功能被保留" "以供未来使用请直接在 j 中使用 := 依照引用进行分组修改" -#: data.table.R:1118 data.table.R:1130 +#: data.table.R:1119 #, c-format msgid "In %s(col1=val1, col2=val2, ...) form, all arguments must be named." msgstr "在 %s(col1=val1, col2=val2, ...) 中,所有参数必须被指名" -#: data.table.R:1135 +#: 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 "在 %s(col1=val1, col2=val2, ...) 中,所有参数必须被指名,但最后参数没名。" +"您是否忘记一个尾随逗号?" + +#: 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 "在 %s(col1=val1, col2=val2, ...) 中,所有参数必须被指名,但这些参数没有名: %s。" + +#: data.table.R:1145 #, c-format msgid "" "LHS of := must be a symbol, or an atomic vector (column names or positions)." msgstr ":= 的 LHS 必须是符号或是原子向量(列名或是列的位置)" -#: data.table.R:1140 +#: 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 ":= 的 LHS 是列的位置但超出了 [1,ncol] 的范围新列只能以名称的方式新增" -#: data.table.R:1143 +#: data.table.R:1153 #, c-format msgid "" "LHS of := isn't column names ('character') or positions ('integer' or " "'numeric')" msgstr ":= 的 LHS 不是列名('字符')或列的位置('整数'或'数值')" -#: data.table.R:1174 +#: data.table.R:1184 #, c-format msgid "" "Invalid .internal.selfref detected and fixed by taking a (shallow) copy of " @@ -808,7 +833,7 @@ msgstr "" "及 ?setattr如果以上讯息无法提供帮助,请回报你的案例至 data.table 问题追踪以助" "于修复根本原因或改进本讯息" -#: data.table.R:1205 +#: data.table.R:1215 #, c-format msgid "" "Cannot assign to an under-allocated recursively indexed list -- L[[i]][,:=] " @@ -817,17 +842,17 @@ msgstr "" "无法指定配置不足的递归索引列表-- L[[i]][,:=] 语法只有在 i 长度为1时有效,但它" "的長度是 %d" -#: data.table.R:1207 +#: data.table.R:1217 #, c-format msgid "Internal error -- item '%s' not found in names of list" msgstr "内部错误 -- 未能在列表名称中找到名为 '%s' 的项" -#: data.table.R:1236 data.table.R:1249 +#: data.table.R:1246 data.table.R:1259 #, c-format msgid "Internal error -- column(s) not found: %s" msgstr "内部错误 -- 找不到此列: %s" -#: data.table.R:1261 +#: data.table.R:1271 #, c-format msgid "" "strptime() usage detected and wrapped with as.POSIXct(). This is to minimize " @@ -836,24 +861,24 @@ msgid "" "needed internally) to avoid this warning." msgstr "" "侦测到使用 strptime() ,已用 as.POSIXct() 包裹这么做是为了尽量避免列被指定为 " -"POSIXltPOSIXlt用40个以上的位元组储存日期(相较于 POSIXct 只用8位元组)请使用 " +"POSIXlt用40个以上的位元组储存日期(相较于 POSIXct 只用8位元组)请使用 " "as.POSIXct() 以避免本警告 (此函数会根据需求在内部调用 strptime())" -#: data.table.R:1278 +#: 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 "" -"未能在调用环境中找到变量 '%s'。在调用环境中查询该变量的原因是因为在 j= 的传入参" -"数中该符号以 .. 为前缀。" +"未能在调用环境中找到变量 '%s'。在调用环境中查询该变量的原因是因为在 j= 的传入" +"参数中该符号以 .. 为前缀。" -#: data.table.R:1290 +#: data.table.R:1301 #, c-format msgid "Internal error: xcolAns does not pass checks: %d/%d/%d/%s" msgstr "内部错误 : xcolAns 无法通过检查: %d/%d/%d/%s" -#: data.table.R:1300 +#: data.table.R:1311 #, c-format msgid "" "Internal error: irows is NULL when making join result at R level. Should no " @@ -862,7 +887,7 @@ msgstr "" "内部错误 : 在 R 生成连接结果时,irows为 NULL 我们已使用了 CsubsetDT,现在不应" "该再发生了" -#: data.table.R:1364 +#: data.table.R:1375 #, c-format msgid "" "j (the 2nd argument inside [...]) is a single symbol but column name '%1$s' " @@ -874,13 +899,13 @@ msgstr "" "环境中使用变量选择列,请尝试 DT[, ..%1$s]。.. 前缀表示上一级,类似于文件系统" "路径。" -#: data.table.R:1419 +#: data.table.R:1430 #, c-format msgid "" "Internal error: j has created a data.table result containing a NULL column" msgstr "内部错误 : j 创建了一个有列为 NULL 的 data.table" -#: data.table.R:1429 +#: data.table.R:1440 #, c-format msgid "" "The column '.N' can't be grouped because it conflicts with the special .N " @@ -889,7 +914,7 @@ msgstr "" "无法对 '.N' 列进行分组,因为与 data.table 特有的 .N 变量冲突请先尝试 " "setnames(DT,'.N','N')" -#: data.table.R:1430 +#: data.table.R:1441 #, c-format msgid "" "The column '.I' can't be grouped because it conflicts with the special .I " @@ -898,27 +923,27 @@ msgstr "" "无法对 '.I' 列进行分组,因为与 data.table 特有的 .I 变量冲突请先尝试 " "setnames(DT,'.I','I')" -#: data.table.R:1457 +#: data.table.R:1469 #, c-format msgid "logical error. i is not data.table, but mult='all' and 'by'=.EACHI" msgstr "逻辑错误: i 不是data.table,但 mult='all' 及 'by'=.EACHI" -#: data.table.R:1480 +#: data.table.R:1492 #, c-format msgid "Internal error: by= is missing" msgstr "内部错误 : 缺少 by=" -#: data.table.R:1521 +#: data.table.R:1533 #, c-format msgid "Internal error: byindex not the index name" msgstr "内部错误 : byindex 不是索引(index)名称" -#: data.table.R:1524 +#: data.table.R:1536 #, c-format msgid "Internal error: byindex not found" msgstr "内部错误 : 找不到 byindex" -#: data.table.R:1797 +#: data.table.R:1790 #, c-format msgid "" "Unable to optimize call to mean() and could be very slow. You must name 'na." @@ -929,12 +954,12 @@ msgstr "" "果您直接使用 mean(x,TRUE)会被认定为 trim=TRUE,trim 是 mean() 中尚未被优化的" "第二顺位参数" -#: data.table.R:1834 +#: data.table.R:1827 #, c-format msgid "Internal error: length(irows)!=length(o__)" msgstr "内部错误:length(irows)!=length(o__)" -#: data.table.R:1935 +#: data.table.R:1936 #, c-format msgid "" "The setkey() normally performed by keyby= has been skipped (as if by= was " @@ -946,83 +971,84 @@ msgstr "" "执行的`setkey()` -- 代码只执行了`by=`。若要避免此警告, 请使用`by=`, 或者提供" "`keyby=`现有的列名" -#: data.table.R:1950 +#: data.table.R:1951 #, c-format msgid "Internal error: jvnames is length %d but ans is %d and bynames is %d" msgstr "内部错误:jvnames 长度为 %d,但是 ans 长度为 %d 且 bynames 为 %d" -#: data.table.R:2020 +#: data.table.R:2021 #, c-format msgid "rownames and rownames.value cannot both be used at the same time" msgstr "rownames和rownames.value 不能同时使用" -#: data.table.R:2025 +#: 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 但 nrow(DT)==%d。 rownames参数为单一列名或单一数值。请考虑使用`rownames.values=`。" +msgstr "" +"length(rownames)==%d 但 nrow(DT)==%d。 rownames参数为单一列名或单一数值。请考" +"虑使用`rownames.values=`。" -#: data.table.R:2029 +#: 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`,但应该为单一列名,单一数值,或NULL" -#: data.table.R:2033 +#: 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但键(key)为多个列 %s;将使用第一列 x[,1] 为行名。" -#: data.table.R:2043 +#: data.table.R:2044 #, c-format msgid "'%s' is not a column of x" msgstr "'%s' 不是x的一个列" -#: data.table.R:2049 +#: 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 不在列索引范围内 [1,ncol%d]。" -#: data.table.R:2054 +#: data.table.R:2055 #, c-format msgid "length(rownames.value)==%d but should be nrow(x)==%d" msgstr "length(rownames.value)==%d 但应该是 nrow(x)==%d" -#: data.table.R:2116 +#: data.table.R:2115 #, c-format msgid "" "Internal error: as.matrix.data.table length(X)==%d but a dimension is zero" -msgstr "" -"内部错误: as.matrix.data.table length(X)==%d 但有一个维度为零" +msgstr "内部错误: as.matrix.data.table length(X)==%d 但有一个维度为零" -#: data.table.R:2152 +#: 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 "当i以`DT[i]<-value`的形式出现,不需要提供j" -#: data.table.R:2162 +#: data.table.R:2161 #, c-format msgid "j must be an atomic vector, see ?is.atomic" msgstr "j必须是原子向量,请参考 ?is.atomic" -#: data.table.R:2163 +#: data.table.R:2162 #, c-format msgid "NA in j" msgstr "j里有NA" -#: data.table.R:2169 +#: data.table.R:2168 #, c-format msgid "j must be vector of column name or positions" msgstr "j 必须是列名(column name)或列位(column position)的向量" -#: data.table.R:2170 +#: data.table.R:2169 #, c-format msgid "" "Attempt to assign to column position greater than ncol(x). Create the column " @@ -1031,7 +1057,7 @@ msgstr "" "试图指定至比ncol(x)还大的列位(column position)。请指定至列名(column name)。一" "般来说用列名取代列位能解决大部分错误。" -#: data.table.R:2237 +#: data.table.R:2236 #, c-format msgid "" "data.table inherits from data.frame (from v1.5), but this data.table does " @@ -1042,42 +1068,42 @@ msgstr "" "table是不是手动创建的(可能创建时使用了`structure()`而非`data.table()`),或者" "是不是使用了更早的data.table版本创建后存到硬盘了。" -#: data.table.R:2246 +#: data.table.R:2245 #, c-format msgid "attempting to assign invalid object to dimnames of a data.table" msgstr "试图指定无效对象给data.table的维度名(dimnames)" -#: data.table.R:2247 +#: data.table.R:2246 #, c-format msgid "data.tables do not have rownames" msgstr "data.tables没有rownames" -#: data.table.R:2248 data.table.R:2626 +#: data.table.R:2247 data.table.R:2616 #, c-format msgid "Can't assign %d names to a %d-column data.table" msgstr "无法将 %d 个名字赋值给一个包含 %d 列的 data.table" -#: data.table.R:2327 +#: data.table.R:2311 #, c-format msgid "'subset' must evaluate to logical" msgstr "'subset' 必须为logical" -#: data.table.R:2370 +#: data.table.R:2354 #, c-format msgid "Argument 'invert' must be logical TRUE/FALSE" msgstr " 'invert' 的参数是逻辑值,必须是 TRUE/FALSE" -#: data.table.R:2411 +#: data.table.R:2395 #, c-format msgid "x argument must be a data.table" msgstr "参数 x 必须是一个 data.table" -#: data.table.R:2416 +#: data.table.R:2400 #, c-format msgid "group length is 0 but data nrow > 0" msgstr "分组长度为0,但 data nrow > 0" -#: data.table.R:2418 +#: data.table.R:2402 #, c-format msgid "" "passing 'f' argument together with 'by' is not allowed, use 'by' when split " @@ -1086,48 +1112,48 @@ msgstr "" "不可同时指定参数 'f' 和参数 'by' ,当利用 data.table的纵列进行数据分割时,请使" "用参数 'by';当利用外部因子进行数据分割时,请使用参数 'f'" -#: data.table.R:2422 +#: data.table.R:2410 #, c-format msgid "Either 'by' or 'f' argument must be supplied" msgstr "必须提供参数 'by' 或参数 'f'" -#: data.table.R:2424 +#: data.table.R:2412 #, c-format msgid "Column '.ll.tech.split' is reserved for split.data.table processing" msgstr "为 split.data.table 进程,纵列 '.ll.tech.split' 被保存" -#: data.table.R:2425 +#: data.table.R:2413 #, c-format msgid "Column '.nm.tech.split' is reserved for split.data.table processing" msgstr "为 split.data.table 进程,纵列 '.nm.tech.split' 被保存" -#: data.table.R:2426 +#: data.table.R:2414 #, c-format msgid "Argument 'by' must refer to column names in x" msgstr "参数 'by' 只适用于 x 中的列名" -#: data.table.R:2427 +#: 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 "参数 'by' 只适用于原子类型的纵列,但现在关联的纵列不是原子类型: %s" -#: data.table.R:2557 +#: 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 "" -"浅拷贝(shallow copy)只是列指针向量的拷贝,因此仅对 data.table或data.frame 有意义,而 x " -"不是 data.table或data.frame" +"浅拷贝(shallow copy)只是列指针向量的拷贝,因此仅对 data.table或data.frame " +"有意义,而 x 不是 data.table或data.frame" -#: data.table.R:2566 +#: data.table.R:2556 #, c-format msgid "setalloccol attempting to modify `*tmp*`" msgstr "setalloccol 试图修改 '*tmp*'" -#: data.table.R:2601 +#: data.table.R:2591 #, c-format msgid "" "Input is a length=1 logical that points to the same address as R's global " @@ -1137,94 +1163,95 @@ msgstr "" "输入值是一个指向与R全局值相同位置的长度为1的逻辑值。因此,该属性是通过副本," "而不是reference 的形式设置。您需要将结果分配回一个变量,参看 issue #1281" -#: data.table.R:2616 +#: data.table.R:2606 #, c-format msgid "x is not a data.table or data.frame" msgstr "x 不是 data.table 或 data.frame." -#: data.table.R:2618 +#: data.table.R:2608 #, c-format msgid "x has %d columns but its names are length %d" msgstr "x有%d列,但其列名的长度为%d" -#: data.table.R:2625 +#: data.table.R:2615 #, c-format msgid "Passed a vector of type '%s'. Needs to be type 'character'." msgstr "传入了一个类型为 '%s' 的向量。须为 'character' 类型。" -#: data.table.R:2638 +#: data.table.R:2628 #, c-format msgid "'new' is not a character vector or a function" msgstr "'new' 既不是特征向量也不是 function" -#: data.table.R:2640 +#: data.table.R:2630 #, c-format msgid "NA in 'new' at positions %s" msgstr "在 'new' 中有NA值 %s" -#: data.table.R:2641 +#: data.table.R:2631 #, c-format msgid "Some duplicates exist in 'old': %s" msgstr "在'old' 中存在重复名称: %s" -#: data.table.R:2643 +#: data.table.R:2633 #, c-format msgid "'old' is type %s but should be integer, double or character" msgstr "'old' 为 %s 类型,但只接受整型、浮点型或者字符串型" -#: data.table.R:2644 +#: data.table.R:2634 #, c-format msgid "'old' is length %d but 'new' is length %d" msgstr "'old' 长度为 %d 但 'new' 的长度为 %d" -#: data.table.R:2645 +#: data.table.R:2635 #, c-format msgid "NA (or out of bounds) in 'old' at positions %s" msgstr "NA(或超出界限)出现在'old' 的位置 %s" -#: data.table.R:2648 +#: 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 "'old' 中的第 %d 项 '%s' 在列名中重复出现。仅第一个会被修改。在 'old' " -"中仍有 %d 项在列名中重复出现。" +msgstr "" +"'old' 中的第 %d 项 '%s' 在列名中重复出现。仅第一个会被修改。在 'old' 中仍有 " +"%d 项在列名中重复出现。" -#: data.table.R:2656 +#: data.table.R:2646 #, c-format msgid "" "Items of 'old' not found in column names: %s. Consider skip_absent=TRUE." msgstr "在 'old' 中未找到如下列名:%s。请考虑设置 skip_absent=TRUE。" -#: data.table.R:2666 +#: data.table.R:2656 #, c-format msgid "Internal error: length(i)!=length(new)" msgstr "内部错误:length(i)!=length(new)" -#: data.table.R:2695 +#: 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 中有如下重复的列名:%s。请移除或者重命名重复项后重试。" -#: data.table.R:2697 +#: data.table.R:2687 #, c-format msgid "Provide either before= or after= but not both" msgstr "提供 before= 或 after= ,但两者不能同时存在" -#: data.table.R:2699 +#: data.table.R:2689 #, c-format msgid "before=/after= accept a single column name or number, not more than one" msgstr "before=/after= 只接受一个列名或列号,不能多于一个" -#: data.table.R:2754 +#: data.table.R:2744 #, c-format msgid "Input is %s but should be a plain list of items to be stacked" msgstr "项是 %s 但应该叠加普通列表项" -#: data.table.R:2758 +#: data.table.R:2748 #, c-format msgid "" "idcol must be a logical or character vector of length 1. If logical TRUE the " @@ -1232,12 +1259,12 @@ msgid "" msgstr "" "idcol必须为逻辑型向量或长度为1的字符型向量.如果逻辑值为TRUEid 列会命名为'.id'" -#: data.table.R:2763 +#: data.table.R:2753 #, c-format msgid "use.names=NA invalid" msgstr "use.names=NA 无效赋值" -#: data.table.R:2765 +#: data.table.R:2755 #, c-format msgid "" "use.names='check' cannot be used explicitly because the value 'check' is new " @@ -1247,42 +1274,54 @@ msgstr "" "请勿直接使用use.names='check',因为值'check'为新增在v1.12.2中后续有所变化,仅" "用表示默认模式详见 ?rbindlist" -#: data.table.R:2780 +#: 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 "" -"检查是否is.data.table(DT) == TRUE,否则,:=, `:=`(...), 和 let(...) 为被界定在j使用,仅一" -"次以特别的方式使用,详见help(\":=\")" +"检查是否is.data.table(DT) == TRUE,否则,:=, `:=`(...), 和 let(...) 为被界定在j" +"使用,仅一次以特别的方式使用,详见help(\":=\")" -#: data.table.R:2786 +#: data.table.R:2775 +#, c-format +msgid "J() called outside of [.data.table. J() is only intended for use in i." +msgstr "J() 在 [.data.table. 外被使用。J() 仅适用于 i 中。" + +#: data.table.R:2779 +#, c-format +msgid "" +".() called outside of [.data.table. .() is only intended as an alias for " +"list() inside DT[...]." +msgstr ".() 在 [.data.table 外被使用。.() 仅适用于 DT[...] 内 list() 的别名。" + +#: data.table.R:2785 #, c-format msgid "" "setDF only accepts data.table, data.frame or list of equal length as input" msgstr "setDF仅允许data.table,data.frame或者同样长度的列表作为输入" -#: data.table.R:2787 +#: data.table.R:2786 #, c-format msgid "rownames contains duplicates" msgstr "行名含有重复" -#: data.table.R:2794 data.table.R:2805 data.table.R:2828 +#: data.table.R:2793 data.table.R:2804 data.table.R:2827 #, c-format msgid "rownames incorrect length; expected %d names, got %d" msgstr "行名长度不正确;需要 %d 名 受到 %d" -#: data.table.R:2813 +#: data.table.R:2812 #, c-format msgid "All elements in argument 'x' to 'setDF' must be of same length" msgstr "'setDF'中的参数'x'的所有元素必须同等长度" -#: data.table.R:2842 +#: data.table.R:2841 #, c-format msgid "Cannot find symbol %s" msgstr "无法找到符号 %s" -#: data.table.R:2849 +#: data.table.R:2848 #, c-format msgid "" "Cannot convert '%1$s' to data.table by reference because binding is locked. " @@ -1293,43 +1332,10 @@ msgid "" msgstr "" "无法通过引用直接将 '%1$s' 转换成 data.table,因其与所在环境已绑定。 这有很大" "可能是因为 '%1$s' 存在于一个包(或环境)中,该包(或环境)已被锁定从而无法修" -"改其绑定的变量。可以尝试将该对象复制到你的现有环境中,如:var <- copy(var)" -"然后再运行 setDT。" - -#: data.table.R:2856 -#, c-format -msgid "" -"Some columns are a multi-column type (such as a matrix column): %s. setDT " -"will retain these columns as-is but subsequent operations like grouping and " -"joining may fail. Please consider as.data.table() instead which will create " -"a new column for each embedded column." -msgstr "" -"某些列为包含多列的类型(如矩阵列):%s。setDT 会保留这些列,但后续的操作如分" -"组(grouping)和联接(joining)等操作可能会失败。请考虑使用 as.data.table() 因" -"为它会为每个内嵌列建立一个新列。" - -#: data.table.R:2888 -#, c-format -msgid "" -"Column %d is of POSIXlt type. Please convert it to POSIXct using as.POSIXct " -"and run setDT again. We do not recommend use of POSIXlt at all because it " -"uses 40 bytes to store one date." -msgstr "" -"第 %d 列属于 POSIXlt 类型。请使用 as.POSIXct 将其转换为 POSIXct 类型并再次运行" -"setDT。我们非常不推荐使用 POSIXlt 类型,因为它需使用 40 个字节来存储一个日期。" +"改其绑定的变量。可以尝试将该对象复制到你的现有环境中,如:var <- copy(var)然" +"后再运行 setDT。" -#: data.table.R:2894 -#, c-format -msgid "" -"All elements in argument 'x' to 'setDT' must be of same length, but the " -"profile of input lengths (length:frequency) is: %s\n" -"The first entry with fewer than %d entries is %d." -msgstr "" -"'setDT' 参数 'x' 中所有的元素均须为同一长度,但输入元素的长度频数表(长度:频" -"数)为:%s\n" -"x中第一个长度比 %d 少的元素为第 %d 项。" - -#: data.table.R:2911 +#: data.table.R:2901 #, c-format msgid "" "Argument 'x' to 'setDT' should be a 'list', 'data.frame' or 'data.table'" @@ -1337,27 +1343,27 @@ msgstr "" "'setDT' 参数 'x' 应为一个列表('list'),数据框('data.frame')或 'data." "table'" -#: data.table.R:2926 +#: data.table.R:2916 #, c-format msgid "Item '%s' not found in names of input list" msgstr "元素 '%s' 不存在于输入列表的元素名中" -#: data.table.R:2951 data.table.R:2976 +#: data.table.R:2941 data.table.R:2966 #, c-format msgid "'prefix' must be NULL or a character vector of length 1." msgstr "'prefix' 必须为 空(NULL)或者长度为 1 的字符向量。" -#: data.table.R:2954 data.table.R:2979 +#: 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 是单个向量,非空的 'cols' 没有意义。" -#: data.table.R:2958 data.table.R:2983 +#: data.table.R:2948 data.table.R:2973 #, c-format msgid "x is a list, 'cols' cannot be 0-length." msgstr "x 是一个列表(list),'cols' 长度不能为0。" -#: data.table.R:3092 +#: data.table.R:3160 #, c-format msgid "" "RHS of %s is length %d which is not 1 or nrow (%d). For robustness, no " @@ -1366,13 +1372,13 @@ msgstr "" "%s 的右手侧 (RHS) 长度为 %d, 其非 1 或 总行数 nrow (%d)。考虑到程序的稳健性," "只有在右侧元素长度为 1 的情况下,我们才会对之进行循环。考虑改用 %%in%% 。" -#: data.table.R:3120 +#: data.table.R:3188 #, c-format msgid "" "Internal error in .isFastSubsettable. Please report to data.table developers" msgstr ".isFastSubsettable 产生了内部错误。请向 data.table 开发者报告" -#: data.table.R:3207 +#: data.table.R:3275 #, c-format msgid "" "'on' argument should be a named atomic vector of column names indicating " @@ -1381,29 +1387,30 @@ msgstr "" "'on' 参数应为一个有子项名字的原子列名向量,指明'i' 中的哪些列应与 'x' 中的哪" "些列联接。" -#: data.table.R:3248 +#: data.table.R:3316 #, c-format msgid "" "Found more than one operator in one 'on' statement: %s. Please specify a " "single operator." -msgstr "在一个 'on' 语句中出现了多个操作符(operator):%s。请仅指定单个操作" -"符。" +msgstr "" +"在一个 'on' 语句中出现了多个操作符(operator):%s。请仅指定单个操作符。" -#: data.table.R:3271 +#: 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' 语句中包含非列名的项:%s。每个'on' 语句中必须包含一个或两个列名。" -#: data.table.R:3273 +#: 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' 语句包含超过 2 个列名:%s。每个'on' 语句中必须包含一个或两个列名。" +msgstr "" +"'on' 语句包含超过 2 个列名:%s。每个'on' 语句中必须包含一个或两个列名。" -#: data.table.R:3278 +#: data.table.R:3346 #, c-format msgid "Invalid join operators %s. Only allowed operators are %s." msgstr "无效联接操作符 %s。只允许如下操作符: %s。" @@ -1452,9 +1459,9 @@ msgid "" "In the next version, this warning will become an error." msgstr "" "data.table 中的 %1$s 泛型方法接收到了一个 %2$s 对象,将尝试重定向使用" -"reshape2 包中相关的方法。请注意 reshape2 包已经被其实包取代且不再积极开发," -"故该重定向目前也不推荐使用。请手动执行该重定向,如 reshape2::%1$s(%3$s)。" -"下一版本中,本警告将变成一个错误。" +"reshape2 包中相关的方法。请注意 reshape2 包已经被其实包取代且不再积极开发,故" +"该重定向目前也不推荐使用。请手动执行该重定向,如 reshape2::%1$s(%3$s)。下一版" +"本中,本警告将变成一个错误。" #: fcast.R:31 #, c-format @@ -1463,17 +1470,17 @@ msgid "" "b ~ c." msgstr "无效的公式。所转换的公式的形式应为LHS ~ RHS,如a + b ~ c。" -#: fcast.R:36 +#: fcast.R:38 #, c-format msgid "data.table to cast must have unique column names" msgstr "要转换的data.table必须具有唯一的列名" -#: fcast.R:60 +#: fcast.R:83 #, c-format msgid "value.var values %s are not found in 'data'." msgstr "value.var 的值 %s 无法在 'data' 中找到。" -#: fcast.R:76 +#: fcast.R:99 #, c-format msgid "" "When 'fun.aggregate' and 'value.var' are both lists, 'value.var' must be " @@ -1482,32 +1489,58 @@ msgstr "" "当 'fun.aggregate' 和 'value.var' 同为 list时, 'value.var' 的长度必须为 1 或 " "length(fun.aggregate)。" -#: fcast.R:109 +#: fcast.R:132 #, c-format msgid "'data' must be a data.table." msgstr "'data' 必须为 data.table" -#: fcast.R:111 +#: fcast.R:134 #, c-format msgid "'drop' must be logical TRUE/FALSE" msgstr "'drop' 必须为逻辑 TRUE/FALSE" -#: fcast.R:128 +#: fcast.R:136 +#, c-format +msgid "Argument 'value.var.in.dots' should be logical TRUE/FALSE" +msgstr "参数 'value.var.in.dots' 应为逻辑值 TRUE 或 FALSE" + +#: fcast.R:138 +#, c-format +msgid "" +"Arguments 'value.var.in.LHSdots', 'value.var.in.RHSdots' should be logical " +"TRUE/FALSE" +msgstr "参数 'value.var.in.LHSdots' 和 'value.var.in.RHSdots' 应为逻辑值 TRUE 或 FALSE" + +#: fcast.R:155 #, c-format msgid "Column [%s] not found or of unknown type." msgstr "列 [%s]] 无法找到或其类型未知。" -#: fcast.R:143 +#: fcast.R:170 #, c-format msgid "Columns specified in formula can not be of type list" msgstr "在formula中指定的列不应为列表类型" -#: fcast.R:159 +#: fcast.R:185 #, c-format -msgid "Aggregate function missing, defaulting to 'length'" -msgstr "聚合函数缺失,将默认采用'length'" +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,但发现重复的行/列组合,因此默认为 length()。也就是说," +"'formula' 中使用的变量 %s 并不单独标识输入'data'中的行。在这种情况下,'fun.aggregate' " +"用于为输出 data.table 中的每个组合导出单个代表值,例如通过求和或平均(分别为 " +"fun.aggregate=sum 或 fun.aggregate=mean)。请检查结果表中是否有大于 1 的值," +"来查看哪些组合不唯一。有关更多详细信息,请参阅 ?dcast.data.table。" -#: fcast.R:165 +#: 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 " @@ -1515,11 +1548,11 @@ msgid "" "Either override by setting the 'fill' argument explicitly or modify your " "function to handle this case appropriately." msgstr "" -"聚合函数应接收向量输入并返回单个值(长度为1)。然而,当前函数返回的长度不为1。" -"因为该单个值将用于填充任何缺失的组合,故必须为长度为1。你可以通过显式设置" -"'fill' 参数来覆盖该值,或修改你的函数以处理该情况。" +"聚合函数应接收向量输入并返回单个值(长度为1)。然而,当前函数返回的长度不为" +"1。因为该单个值将用于填充任何缺失的组合,故必须为长度为1。你可以通过显式设" +"置'fill' 参数来覆盖该值,或修改你的函数以处理该情况。" -#: fcast.R:222 +#: fcast.R:253 #, c-format msgid "Internal error -- empty rhsnames in dcast; please report" msgstr "内部错误:dcast 中 rhsnames 为空;请报告" @@ -1535,17 +1568,17 @@ msgid "" "reshape2::%1$s(%3$s). In the next version, this warning will become an error." msgstr "" "data.table 中的 %1$s 泛型方法接收到了一个 %2$s 对象,将尝试重定向使用" -"reshape2 包中相关的方法。请注意 reshape2 包已经被其实包取代且不再积极开发," -"故该重定向目前也不推荐使用。要在 data.table 和 reshape2 包同时载入的情况下" -"继续使用 reshape2 包中的 melt 方法,如 melt.list,你可指定命名空间,如" -"reshape2::%1$s(%3$s)。下一版本中,本警告将变成一个错误。" +"reshape2 包中相关的方法。请注意 reshape2 包已经被其实包取代且不再积极开发,故" +"该重定向目前也不推荐使用。要在 data.table 和 reshape2 包同时载入的情况下继续" +"使用 reshape2 包中的 melt 方法,如 melt.list,你可指定命名空间,如reshape2::" +"%1$s(%3$s)。下一版本中,本警告将变成一个错误。" #: fmelt.R:28 #, c-format msgid "Input patterns must be of type character." msgstr "输入的 patterns 必须是字符类型。" -#: fmelt.R:32 +#: fmelt.R:31 #, c-format msgid "Pattern(s) not found: [%s]" msgstr "未找到下列 pattern:[%s]" @@ -1563,16 +1596,14 @@ msgstr "" msgid "" "group names specified in ... conflict with measure argument names; please " "fix by changing group names: %s" -msgstr "" -"在 ... 中指定的组名与 measure 参数名冲突;请通过修改组名来解决:%s" +msgstr "在 ... 中指定的组名与 measure 参数名冲突;请通过修改组名来解决:%s" #: fmelt.R:60 #, c-format msgid "" "each ... argument to measure must be a function with at least one argument, " "problem: %s" -msgstr "" -"measure 中的每个 ... 参数必须为至少带有一个参数的函数,问题:%s" +msgstr "measure 中的每个 ... 参数必须为至少带有一个参数的函数,问题:%s" #: fmelt.R:74 #, c-format @@ -1624,15 +1655,14 @@ msgstr "" #, c-format msgid "" "pattern must contain at least one capture group (parenthesized sub-pattern)" -msgstr "" -"pattern 必须包含至少一个捕获组(括号子模式)" +msgstr "pattern 必须包含至少一个捕获组(括号子模式)" -#: fmelt.R:123 +#: fmelt.R:124 #, c-format msgid "sep must be character string" msgstr "sep 必须是一个字符串" -#: fmelt.R:129 +#: fmelt.R:130 #, c-format msgid "" "each column name results in only one item after splitting using sep, which " @@ -1643,7 +1673,7 @@ msgstr "" "使用 sep 分割后,每个列名只产生一个条目,这意味着所有列都将被融合;请通过直接" "指定所有列同时不使用 measure 来解决,或使用其他 sep/pattern 来解决" -#: fmelt.R:138 +#: fmelt.R:140 #, c-format msgid "" "number of unique column IDs =%d is less than number of melted columns =%d; " @@ -1651,63 +1681,60 @@ msgid "" msgstr "" "唯一列 ID 的数量 =%d 少于融合的列数量 =%d;请通过修改 pattern/sep 来解决" -#: fmelt.R:148 +#: 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 "" -"在 measurev 的 fun.list 中,每个非 NULL 元素必须为至少带有一个参数的函数," -"问题:%s" +"在 measurev 的 fun.list 中,每个非 NULL 元素必须为至少带有一个参数的函数,问" +"题:%s" -#: fmelt.R:152 +#: fmelt.R:154 #, c-format msgid "" "each conversion function must return an atomic vector with same length as " "its first argument, problem: %s" -msgstr "" -"每个转换函数必须返回一个与其第一个参数长度相同的原子向量,问题:%s" +msgstr "每个转换函数必须返回一个与其第一个参数长度相同的原子向量,问题:%s" -#: fmelt.R:155 +#: fmelt.R:157 #, c-format msgid "%s conversion function returned vector of all NA" msgstr "%s 转换函数返回了全为 NA 的向量" -#: fmelt.R:161 +#: fmelt.R:163 #, c-format msgid "" "number of unique groups after applying type conversion functions less than " "number of groups, change type conversion" -msgstr "" -"应用类型转换函数后,唯一组数量少于组总数量,请修改类型转换函数" +msgstr "应用类型转换函数后,唯一组数量少于组总数量,请修改类型转换函数" -#: fmelt.R:166 +#: fmelt.R:168 #, c-format msgid "" "%s column class=%s after applying conversion function, but must be character" -msgstr "" -"应用转换函数后,%s 列的类型=%s,但此处要求必须为字符串类型" +msgstr "应用转换函数后,%s 列的类型=%s,但此处要求必须为字符串类型" -#: fmelt.R:170 +#: fmelt.R:172 #, c-format msgid "%s is the only group; fix by creating at least one more group" msgstr "%s 是唯一的组;请通过再创建至少一个组来解决" -#: fmelt.R:193 +#: fmelt.R:195 #, c-format msgid "'data' must be a data.table" msgstr "'data' 必须是一个 data.table" -#: fmelt.R:212 +#: 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 "" -"在 'measure.vars' 和 'value.name' 参数中都提供了 'value.name';" -"将优先使用 'measure.vars' 中的值。" +"在 'measure.vars' 和 'value.name' 参数中都提供了 'value.name';将优先使用 " +"'measure.vars' 中的值。" -#: fmelt.R:215 +#: fmelt.R:217 #, c-format msgid "Please provide a name to each element of 'measure.vars'." msgstr "请为 'measure.vars' 中的每个元素提供一个名称。" @@ -1753,8 +1780,8 @@ 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 必须有键(key:已经排序并且标记为已排序)。请先用 setkey(y, ...) 设置主" -"键,可以参考 ?setkey 以及 ?foverlaps 中提供的例子。" +"y 必须有键(key:已经排序并且标记为已排序)。请先用 setkey(y, ...) 设置主键," +"可以参考 ?setkey 以及 ?foverlaps 中提供的例子。" #: foverlaps.R:24 #, c-format @@ -1830,16 +1857,17 @@ 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 "" -"'by.x'的最后两列应该与data.table x中的'开始'与'结尾'的间隔对应且必须是整数/" -"数字类型" +"'by.x'的最后两列应该与data.table x中的'开始'与'结尾'的间隔对应且必须是整数/数" +"字类型" #: 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 "data.table %s 的 '%s' 列中存在缺失值:'%s'。若使 foverlaps() 运行,必" -"须删除指定范围列内所有包含NA值的行。" +msgstr "" +"data.table %s 的 '%s' 列中存在缺失值:'%s'。若使 foverlaps() 运行,必须删除指" +"定范围列内所有包含NA值的行。" #: foverlaps.R:63 #, c-format @@ -1854,8 +1882,8 @@ 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 "" -"'by.y'的最后两列应该与data.table y中的'开始'与'结尾'的间隔对应且必须是整数/" -"数字类型" +"'by.y'的最后两列应该与data.table y中的'开始'与'结尾'的间隔对应且必须是整数/数" +"字类型" #: foverlaps.R:72 #, c-format @@ -1922,33 +1950,31 @@ msgstr "x是一个list, 'cols'不能为0长度" msgid "" "Input column '..na_prefix..' conflicts with data.table internal usage; " "please rename" -msgstr "" -"输入列 '..na_prefix..' 与 data.table 内部使用变量冲突,请重命名" +msgstr "输入列 '..na_prefix..' 与 data.table 内部使用变量冲突,请重命名" #: frank.R:46 #, c-format msgid "" "Input column '..stats_runif..' conflicts with data.table internal usage; " "please rename" -msgstr "" -"输入列 '..stats_runif..' 与 data.table 内部使用变量冲突,请重命名" +msgstr "输入列 '..stats_runif..' 与 data.table 内部使用变量冲突,请重命名" #: fread.R:10 #, c-format msgid "Used more than one of the arguments input=, file=, text= and cmd=." msgstr "使用了超过一个参数, 包括input=, file=, text= 和 cmd=." -#: fread.R:22 +#: fread.R:23 #, c-format msgid "Argument 'encoding' must be 'unknown', 'UTF-8' or 'Latin-1'." msgstr "参数 'encoding' 必须为 'unknown', 'UTF-8' 或 'Latin-1'." -#: fread.R:40 +#: fread.R:42 #, c-format msgid "'text=' is type %s but must be character." msgstr "'text=' 为 %s 类型,但需要其必须为字符串类型。" -#: fread.R:53 +#: fread.R:55 #, c-format msgid "" "input= must be a single character string containing a file name, a system " @@ -1960,7 +1986,7 @@ msgstr "" "令, 以'http[s]://','ftp[s]://' 或 'file://' 开头的URL, 或是本身就包含至少一个" "\\n 或 \\r的输入数据" -#: fread.R:58 +#: fread.R:60 #, c-format msgid "" "input= contains no \\n or \\r, but starts with a space. Please remove the " @@ -1969,7 +1995,7 @@ msgstr "" "input= 不包含 \\n 或 \\r, 但是开头有个空格请移除开头的空格, 或使用text=, " "file= 或 cmd=" -#: fread.R:62 +#: fread.R:64 #, c-format msgid "" "Taking input= as a system command because it contains a space ('%s'). If " @@ -1980,23 +2006,23 @@ msgid "" "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 "" -"因 input= 中包含空格('%s'),故将其视为一个系统命令处理。如果其为文件名," -"请将空格去除,或直接使用 file=。当一个变量被传给 input= 但其又被当作一个系" -"统命令来处理时,则存在一定的安全隐患:设想一下你在开发一个 app,而该 app 可" -"能存在恶意用户, 同时这个 app 运行在不安全的环境中,如该 app 被以 root 权限" -"运行。若需获取更多信息或了解哪一选项可禁止本信息,请阅读 v1.11.6 版本 NEWS " -"文件里面的第 5 条。" +"因 input= 中包含空格('%s'),故将其视为一个系统命令处理。如果其为文件名,请" +"将空格去除,或直接使用 file=。当一个变量被传给 input= 但其又被当作一个系统命" +"令来处理时,则存在一定的安全隐患:设想一下你在开发一个 app,而该 app 可能存在" +"恶意用户, 同时这个 app 运行在不安全的环境中,如该 app 被以 root 权限运行。若" +"需获取更多信息或了解哪一选项可禁止本信息,请阅读 v1.11.6 版本 NEWS 文件里面的" +"第 5 条。" -#: fread.R:75 +#: 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= 须为包含文件名的字符串,或以 'http[s]://'、'ftp[s]://' 或 'file://' 开头" -"的URL字符串。" +"file= 须为包含文件名的字符串,或以 'http[s]://'、'ftp[s]://' 或 'file://' 开" +"头的URL字符串。" -#: fread.R:80 +#: fread.R:82 #, c-format msgid "" "URL requires download.file functionalities from R >=3.2.2. You can still " @@ -2005,29 +2031,28 @@ msgstr "" "URL 需要 R >=3.2.2 的 download.file 功能。不过你仍可手动下载该文件并使用" "fread 来读取它。" -#: fread.R:91 +#: fread.R:93 #, c-format msgid "File '%s' does not exist or is non-readable. getwd()=='%s'" msgstr "文件 '%s' 不存在, 或不可读. getwd()=='%s'" -#: fread.R:92 +#: fread.R:94 #, c-format msgid "File '%s' is a directory. Not yet implemented." msgstr "文件 '%s' 是个目录。还没有编程实现。" -#: fread.R:94 +#: fread.R:96 #, c-format msgid "File '%s' has size 0. Returning a NULL %s." msgstr "文件 '%s' 的大小为0. 返回一个NULL %s." -#: fread.R:107 +#: fread.R:109 #, c-format msgid "" "Compressed files containing more than 1 file are currently not supported." -msgstr "" -"目前不支持包含多个文件的压缩文件。" +msgstr "目前不支持包含多个文件的压缩文件。" -#: fread.R:119 +#: fread.R:121 #, c-format msgid "" "To read gz and bz2 files directly, fread() requires 'R.utils' package which " @@ -2037,14 +2062,14 @@ msgstr "" "想要直接读取 gz 和 bz2 文件, fread() 需要 'R.utils' 包.请用 'install." "packages('R.utils')'安装 'R.utils' 包." -#: fread.R:129 +#: fread.R:131 #, c-format msgid "" "'autostart' is now deprecated and ignored. Consider skip='string' or skip=n" msgstr "" "'autostart' 现在已经不再推荐使用且失效, 请考虑用 skip='string' 或 skip=n" -#: fread.R:131 +#: fread.R:133 #, c-format msgid "" "colClasses is type 'logical' which is ok if all NA but it has some TRUE or " @@ -2054,12 +2079,12 @@ msgstr "" "colClasses 只能在全部是NA的情况下为逻辑变量. 请考虑使用 drop= 或 select= . 更" "多信息请参照 ?fread" -#: fread.R:135 +#: fread.R:137 #, c-format msgid "colClasses is not type list or character vector" msgstr "colClasses 不是列表 (list) 或字符向量 (character vector)" -#: fread.R:140 +#: fread.R:142 #, c-format msgid "" "colClasses=\"NULL\" (quoted) is interpreted as colClasses=NULL (the default) " @@ -2068,30 +2093,30 @@ msgstr "" "colClasses=\"NULL\" (带引号) 应该被视为 colClasses=NULL (默认情况)而不是弃掉" "每个列" -#: fread.R:152 +#: fread.R:154 #, c-format msgid "na.strings[%d]==\"%s\" consists only of whitespace, ignoring" msgstr "na.strings[%d]==\"%s\" 仅包含空格, 已忽略" -#: fread.R:155 +#: fread.R:157 #, 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 ." +"%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. na.strings 中包含 strip.white==TRUE (默认情况) 和 \"\", 因此(字符类型的)列中" -"的空格会被当作 ." +"%s. 因为 strip.white=TRUE (默认情况), 请使用 na.strings=\"\" 以使得(字符类型" +"的)列中的空格会被当作 ." -#: fread.R:157 +#: fread.R:159 #, 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 ." +"%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 (默认情况), 请使用 na.strings=\"\" 以使得(字符类型的)列" -"中的空格会被当作 ." +"%s. na.strings 中包含 strip.white==TRUE (默认情况) 和 \"\", 因此(字符类型的)" +"列中的空格会被当作 ." -#: fread.R:161 +#: fread.R:163 #, c-format msgid "" "%s. But strip.white=FALSE. Use strip.white=TRUE (default) together with na." @@ -2100,7 +2125,7 @@ msgstr "" "%s. 但是 strip.white=FALSE. 请使用 strip.white=TRUE (默认情况), 同时na." "strings=\"\", 以使得(字符类型的)列中的空格转成 ." -#: fread.R:167 +#: fread.R:169 #, c-format msgid "" "'data.table' relies on the package 'yaml' to parse the file header; please " @@ -2109,7 +2134,7 @@ msgstr "" "'data.table' 依赖 'yaml' 包来分析文件头 (header)请使用 install." "packages('yaml') 来安装然后再重试." -#: fread.R:171 +#: fread.R:173 #, c-format msgid "" "Combining a search string as 'skip' and reading a YAML header may not work " @@ -2121,17 +2146,17 @@ msgstr "" "时, 将从文件的开头开始搜索 'skip', 而 不是 从元数据的结尾开始;如果你想要" "fread 提供更直观的功能支持, 请在 GitHub 上提交一个 issue。" -#: fread.R:181 +#: 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 "" -"在第一个未被跳过的行 (%3$d) 中遇到 <%1$s%2$s>。它不是一个有效的 YAML 文件头的开头" -"(有效的开头应符合正则表达式 \"%4$s\");请检查你的输入并重试。" +"在第一个未被跳过的行 (%3$d) 中遇到 <%1$s%2$s>。它不是一个有效的 YAML 文件头的" +"开头(有效的开头应符合正则表达式 \"%4$s\");请检查你的输入并重试。" -#: fread.R:193 +#: fread.R:195 #, c-format msgid "" "Reached the end of the file before finding a completion to the YAML header. " @@ -2141,19 +2166,19 @@ msgstr "" "至文件的结尾 YAML 文件头仍未结束。一个有效的 YAML 文件头是指符合正则表达式 " "\"%s\"的行。请再次检查输入文件是否为一有效的 csvy 文件。" -#: fread.R:207 +#: fread.R:209 #, c-format msgid "User-supplied 'header' will override that found in metadata." msgstr "用户提供的'header'将覆盖元数据中的表头" -#: fread.R:225 +#: fread.R:227 #, c-format msgid "" "User-supplied column names in 'col.names' will override those found in YAML " "metadata." msgstr "用户在“col.names”中提供的列名将覆盖在YAML元数据中找到的列名" -#: fread.R:234 +#: fread.R:236 #, c-format msgid "" "colClasses dictated by user input and those read from YAML header are in " @@ -2162,31 +2187,31 @@ msgid "" "YAML header; please exclude the column(s) from colClasses if this was " "unintentional." msgstr "" -"用户输入的 colClasses 和从 YAML 文件头中读取的 colClasses 冲突(冲突列为 [%s]" -");程序会假设用户输入是有意要覆盖 YAML 文件头,因此,YAML 文件头中的类型将被" -"忽略;如果这并非有意为之,请在 colClasses 中排除这些列。" +"用户输入的 colClasses 和从 YAML 文件头中读取的 colClasses 冲突(冲突列为 " +"[%s]);程序会假设用户输入是有意要覆盖 YAML 文件头,因此,YAML 文件头中的类型" +"将被忽略;如果这并非有意为之,请在 colClasses 中排除这些列。" -#: fread.R:255 +#: fread.R:257 #, c-format msgid "User-supplied 'sep' will override that found in metadata." msgstr "用户提供的“sep”将覆盖元数据中的分隔符" -#: fread.R:260 +#: fread.R:262 #, c-format msgid "User-supplied 'quote' will override that found in metadata." msgstr "用户提供的“quote”将覆盖元数据中的引号" -#: fread.R:265 +#: fread.R:267 #, c-format msgid "User-supplied 'dec' will override that found in metadata." msgstr "用户提供的“dec”将覆盖元数据中的小数点分隔符" -#: fread.R:269 +#: fread.R:271 #, c-format msgid "User-supplied 'na.strings' will override that found in metadata." msgstr "用户提供的“na.strings”将覆盖元数据中对默认值的预处理" -#: fread.R:317 +#: fread.R:319 #, c-format msgid "" "Column '%s' was requested to be '%s' but fread encountered the following " @@ -2194,12 +2219,11 @@ msgid "" "\t%s\n" "so the column has been left as type '%s'" msgstr "" -"列 '%s' 被指定为 '%s' 类型,但 fread 却遇到了以下" -"%s:\n" +"列 '%s' 被指定为 '%s' 类型,但 fread 却遇到了以下%s:\n" "\t%s\n" "故该列的类型将被定为 '%s'" -#: fread.R:340 +#: fread.R:342 #, c-format msgid "" "key argument of data.table() must be a character vector naming columns (NB: " @@ -2207,7 +2231,7 @@ msgid "" msgstr "" "data.table()的key参数必须是字符向量命名的列(NB:col.names在这之前被使用过)" -#: fread.R:349 +#: fread.R:351 #, c-format msgid "" "index argument of data.table() must be a character vector naming columns " @@ -2245,31 +2269,32 @@ msgid "" "remove logicalAsInt in future." msgstr "" "logicalAsInt 参数已重命名为 logical01 参数以与 fread 保持一致。目前它可以正常" -"工作,但请在方便的时候将其改为 logical01,以便我们在未来删除 logicalAsInt 参数。" +"工作,但请在方便的时候将其改为 logical01,以便我们在未来删除 logicalAsInt 参" +"数。" #: fwrite.R:40 #, c-format msgid "x being coerced from class: matrix to data.table" msgstr "x 的类将强制从 matrix 转变为 data.table" -#: fwrite.R:79 +#: 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 "若你想以一空白文件覆盖文件 %s,请先使用 file.remove。" -#: fwrite.R:80 +#: fwrite.R:86 #, c-format msgid "Input has no columns; doing nothing.%s" msgstr "输入没有列,不执行任何操作。%s" -#: fwrite.R:83 +#: fwrite.R:89 #, c-format msgid "Input has no columns; creating an empty file at '%s' and exiting." msgstr "输入中没有任何列,将创建一个空文件 '%s' 并退出。" -#: fwrite.R:90 +#: fwrite.R:96 #, c-format msgid "" "'data.table' relies on the package 'yaml' to write the file header; please " @@ -2351,9 +2376,9 @@ msgid "" "grouping by A,B and B,A will produce the same aggregations. Use " "`sets=unique(lapply(sets, sort))` to eliminate duplicates." msgstr "" -"'sets' 中第 %d 个输入中包含重复的元素(即排序结果相同),因此输出的结果中将" -"包含重复的行。请注意,按照 A、B 分组与按照 B、A 分组的结果是一样的。" -"可使用 `sets=unique(lapply(sets, sort))` 来消除重复项。" +"'sets' 中第 %d 个输入中包含重复的元素(即排序结果相同),因此输出的结果中将包" +"含重复的行。请注意,按照 A、B 分组与按照 B、A 分组的结果是一样的。可使用 " +"`sets=unique(lapply(sets, sort))` 来消除重复项。" #: groupingsets.R:73 #, c-format @@ -2466,7 +2491,8 @@ msgstr "列名 %s 在结果中是重复的" msgid "" "data.table %s IN DEVELOPMENT built %s%s using %d threads (see ?getDTthreads)." msgstr "" -"正在开发中的 data.table %s,构建于 %s%s,使用了 %d 个线程(参见 ?getDTthreads)。" +"正在开发中的 data.table %s,构建于 %s%s,使用了 %d 个线程(参见 ?" +"getDTthreads)。" #: onAttach.R:25 #, c-format @@ -2548,9 +2574,9 @@ msgid "" "GitHub issue.\n" "**********" msgstr "" -"这是 %s。此警告一般不应出现在 Windows 或 Linux 平台中,因为data.table 的 configure " -"脚本中已通过向编译器传递 -fopenmp 参数启用了 OpenMP。如果你在 Windows 或 " -"Linux 平台中发现此警告,请在 GitHub 中提交 issue。" +"这是 %s。此警告一般不应出现在 Windows 或 Linux 平台中,因为data.table 的 " +"configure 脚本中已通过向编译器传递 -fopenmp 参数启用了 OpenMP。如果你在 " +"Windows 或 Linux 平台中发现此警告,请在 GitHub 中提交 issue。" #: onAttach.R:40 #, c-format @@ -2566,9 +2592,9 @@ msgid "" msgstr "" "**********\n" "该 data.table 使用 R < 3.4.0(2017年4月)进行编译,已知会存在内存泄露问题。请" -"升级R 后重新安装 data.table 以修复内存泄露问题。维护和测试支持旧版本的代码分支会" -"增加开发时间,所以请升级 R。我们打算将 data.table 的依赖从 8 年前的 R 3.1.0(" -"2014年4月)升级到 5 年前的 R 3.4.0(2017年4月)。\n" +"升级R 后重新安装 data.table 以修复内存泄露问题。维护和测试支持旧版本的代码分" +"支会增加开发时间,所以请升级 R。我们打算将 data.table 的依赖从 8 年前的 R " +"3.1.0(2014年4月)升级到 5 年前的 R 3.4.0(2017年4月)。\n" "**********" #: onLoad.R:9 @@ -2577,10 +2603,10 @@ 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 "" -"选项 'datatable.nomatch' 虽定义,但现在已被忽略。请参见 v1.12.4 NEWS(2019年10月)" -"的第11条说明,以及 v1.14.2 的第14条说明。" +"选项 'datatable.nomatch' 虽定义,但现在已被忽略。请参见 v1.12.4 NEWS(2019年" +"10月)的第11条说明,以及 v1.14.2 的第14条说明。" -#: onLoad.R:26 +#: onLoad.R:27 #, c-format msgid "" "The data_table.%s version (%s) does not match the package (%s). Please close " @@ -2603,15 +2629,16 @@ msgstr "" "17478协助我们确认这个Bug。R和C代码之间的这种不匹配可能发生在任何包中,而不仅" "仅是在data.table中。只是data.table添加了这个检查" -#: onLoad.R:30 +#: 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 "当前 R 的版本为 %s,但 data.table 安装是使用的是 R %s 版本。R 主版本号" -"必须匹配。请重新安装 data.table。" +msgstr "" +"当前 R 的版本为 %s,但 data.table 安装是使用的是 R %s 版本。R 主版本号必须匹" +"配。请重新安装 data.table。" -#: onLoad.R:95 +#: onLoad.R:97 #, c-format msgid "" "Option 'datatable.CJ.names' no longer has any effect, as promised for 4 " @@ -2621,31 +2648,31 @@ msgstr "" "选项 'datatable.CJ.names' 已经没有任何效果。这一变更早在 4 年前就已决定。现在" "该选项已被忽略。如果你仍倾向于旧的行为,请按需手动命名 `...` 条目。" -#: onLoad.R:100 +#: onLoad.R:102 #, c-format msgid "Unexpected base R behaviour: list(x) has copied x" msgstr "意外的base R行为:list(x)已经复制了x" -#: onLoad.R:108 +#: onLoad.R:110 #, c-format msgid "Unexpected base R behaviour: names<- has copied column contents" msgstr "意外的base R行为:names<- 已复制列内容" -#: onLoad.R:118 +#: onLoad.R:120 #, c-format msgid "" "Unexpected base R behaviour: DF[2,2]<- did not copy column 2 which was " "assigned to" msgstr "意外的base R行为:DF[2,2]<- 没有复制第二列它被分配给" -#: onLoad.R:119 +#: onLoad.R:121 #, c-format msgid "" "Unexpected base R behaviour: DF[2,2]<- copied the first column which was not " "assigned to, too" msgstr "意外的base R行为:DF[2,2]<-复制了第一列的内容,它也没有被分配给" -#: onLoad.R:121 +#: onLoad.R:123 #, c-format msgid "Unexpected base R behaviour: DF[2,2]<- has not copied address(DF)" msgstr "意外的base R行为:DF[2,2]<- 还没有复制address(DF)" @@ -2665,22 +2692,22 @@ msgstr "提供了percent=,但为长度 %d" msgid "percent==%d but should be a number between 2 and 100" msgstr "percent==%d 但应为2到100之间的数字" -#: print.data.table.R:17 +#: print.data.table.R:19 #, c-format msgid "Valid options for col.names are 'auto', 'top', and 'none'" msgstr "对col.names有效的参数为'auto', 'top', and 'none'" -#: print.data.table.R:19 +#: print.data.table.R:21 #, c-format msgid "Valid options for trunc.cols are TRUE and FALSE" msgstr "对trunc.cols有效的参数为TRUE和FALSE" -#: print.data.table.R:21 +#: print.data.table.R:23 #, c-format msgid "Column classes will be suppressed when col.names is 'none'" msgstr "当col.names为'none'时,列的类型将被抑制" -#: print.data.table.R:146 +#: print.data.table.R:156 #, c-format msgid "" "Internal structure doesn't seem to be a list. Possibly corrupt data.table." @@ -2697,8 +2724,8 @@ 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 "" -"输入中所提供的字符串对象不是标量(长度为 1 )对象,如果您需要它们作为字符串向量而" -"非名称,请将每个对象放入到 'I' 调用中:%s" +"输入中所提供的字符串对象不是标量(长度为 1 )对象,如果您需要它们作为字符串向量" +"而非名称,请将每个对象放入到 'I' 调用中:%s" #: programming.R:50 #, c-format @@ -2905,8 +2932,8 @@ msgstr "列 '%s' 为 '%s' 类型,目前尚不支持使用该类型排序。" msgid "" "'sorted' is TRUE but element %d is non-atomic, which can't be sorted; try " "setting sorted = FALSE" -msgstr "'sorted' 为 TRUE 但 %d 元素并非原子类型,无法排序。请尝试使用 " -"sorted = FALSE" +msgstr "" +"'sorted' 为 TRUE 但 %d 元素并非原子类型,无法排序。请尝试使用 sorted = FALSE" #: setkey.R:344 #, c-format @@ -3046,12 +3073,9 @@ msgid "Internal error: factor type mismatch should have been caught earlier" msgstr "内部错误:此时不匹配的因子类型应已被发现" #: shift.R:3 -msgid "Provided argument fill=" -msgstr "提供的 fill= 参数" - -#: shift.R:3 -msgid "will be ignored since type='shift'." -msgstr "将被忽略,因为 type='shift'。" +#, c-format +msgid "Provided argument fill=%s will be ignored since type='cyclic'." +msgstr "提供的 fill= 参数将被忽略,因为 type='cyclic'。" #: tables.R:46 #, c-format @@ -3077,33 +3101,38 @@ msgstr "" msgid "Neither %s nor %s exist in %s" msgstr "%3$s 中 %1$s 也 %2$s 不存在" -#: test.data.table.R:114 +#: test.data.table.R:118 msgid "object '%s' not found" msgstr "未找到 '%s' 对象" -#: test.data.table.R:138 +#: test.data.table.R:142 #, c-format msgid "" "memtest intended for Linux. Step through data.table:::rss() to see what went " "wrong." msgstr "memtest 仅适用于 Linux。请逐步执行 data.table:::rss() 以查看错误原因。" -#: test.data.table.R:176 +#: test.data.table.R:196 +#, c-format +msgid "Attempt to subset to %d tests matching '%s' failed, running full suite." +msgstr "尝试进行子集化 %d 个测试匹配 '%s' 失败,正在运行所有测试。" + +#: test.data.table.R:244 #, c-format msgid "Failed in %s after test %s before the next test() call in %s" msgstr "测试于 %s 后失败,失败发生在测试 %s 之后、下一 test() 之前、调用 %s 时" -#: test.data.table.R:186 +#: test.data.table.R:254 #, c-format msgid "%d error(s) out of %d. Search %s for test number(s) %s. Duration: %s." msgstr "%2$d 中共产生 %1$d 个错误。搜索 %3$s 以定位测试编号 %4$s。用时:%5$s。" -#: test.data.table.R:199 +#: test.data.table.R:267 #, c-format msgid "Timings count mismatch: %d vs %d" msgstr "计时不一致: %d 对 %d" -#: test.data.table.R:312 +#: test.data.table.R:396 #, c-format msgid "" "Test %s is invalid: when error= is provided it does not make sense to pass y " @@ -3150,8 +3179,8 @@ msgid "" "specified)." msgstr "" "当参数 'type.convert' 包含一个未命名元素时,此元素应为最后一个元素,且应为一" -"个函数。不允许包含多个未命名元素,除非所有元素都为函数,且所有元素的总个数为" -"%d(即输入列表转置后的长度或 'keep' 参数指定的长度)。" +"个函数。不允许包含多个未命名元素,除非所有元素都为函数,且所有元素的总个数" +"为%d(即输入列表转置后的长度或 'keep' 参数指定的长度)。" #: transpose.R:66 #, c-format @@ -3172,19 +3201,19 @@ msgid "" "specified) or be between %d and %d (if it is not). But '%s' is/are not " "contained in '%s'." msgstr "" -"当参数 'type.convert' 包含转置列表的索引时,它们应该是参数 'keep' (如果" -"提供了的话)中的整数值,或者(如果 'keep' 没有指定的话)应介于 %d 和 %d 之间。" -"但 '%s' 并不包含在 '%s' 中。" +"当参数 'type.convert' 包含转置列表的索引时,它们应该是参数 'keep' (如果提供" +"了的话)中的整数值,或者(如果 'keep' 没有指定的话)应介于 %d 和 %d 之间。但 " +"'%s' 并不包含在 '%s' 中。" #: transpose.R:74 #, c-format msgid "" "In the argument 'type.convert', '%s' was ignored because all elements in the " -"transpose list or elements corrisponding to indices specified in the 'keep' " +"transpose list or elements corresponding to indices specified in the 'keep' " "argument have already been converted." msgstr "" -"忽略参数 'type.convert' 中的 '%s',因为转置列表中的所有元素或参数 'keep'" -"中索引对应的元素已经被转换。" +"忽略参数 'type.convert' 中的 '%s',因为转置列表中的所有元素或参数 'keep'中索" +"引对应的元素已经被转换。" #: transpose.R:83 #, c-format @@ -3202,7 +3231,7 @@ msgstr "" msgid "length(names) (= %d) is not equal to length(%s) (= %d)." msgstr "length(names) (= %d) 并不等于 length(%s) (= %d)。" -#: uniqlist.R:12 +#: uniqlist.R:11 #, c-format msgid "l not type list" msgstr "l并非列表(list)类型" @@ -3217,16 +3246,16 @@ msgstr "参数 'nan' 的长度必须为 1" msgid "Argument 'nan' must be NA or NaN" msgstr "参数 'nan' 必须为 NA 或 NaN" -#: utils.R:32 +#: utils.R:28 msgid "Internal error: use endsWithAny instead of base::endsWith" msgstr "内部错误:使用 endsWithAny 而非 base::endsWith" -#: utils.R:43 utils.R:52 +#: utils.R:39 utils.R:48 #, c-format msgid "x not boolean" msgstr "x并非布尔值" -#: utils.R:63 +#: utils.R:59 #, c-format msgid "" "Some columns are type 'integer64' but package bit64 is not installed. Those " @@ -3273,7 +3302,7 @@ msgstr "" msgid "Following columns are not numeric and will be omitted: %s" msgstr "以下的列并非数值类型,将被忽略:%s" -#: print.data.table.R:51 +#: print.data.table.R:53 msgid "Index: %s\n" msgid_plural "Indices: %s\n" msgstr[0] "索引(index): %s\n" diff --git a/po/zh_CN.po b/po/zh_CN.po index b915a63c2e..a469812513 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: data.table 1.12.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-12-28 12:46+0000\n" +"POT-Creation-Date: 2024-06-23 12:07-0300\n" "PO-Revision-Date: 2020-10-18 20:39-0400\n" "Last-Translator: Yuhang Chen \n" "Language-Team: Mandarin\n" @@ -49,15 +49,48 @@ msgstr "内部错误: .internal.selfref ptr不为NULL或字符向量" msgid "Internal error: length(names)>0 but =0 and not NA." msgstr "getOption('datatable.alloc')值为%d, 其必须大于等于零且不能为NA" -#: assign.c:250 between.c:16 between.c:22 forder.c:459 forder.c:462 frollR.c:40 +#: 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 openmp-utils.c:79 uniqlist.c:354 utils.c:106 +#: 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 的参数是逻辑值,必须是 TRUE 或 FALSE" -#: assign.c:298 +#: assign.c:340 msgid "assign has been passed a NULL dt" msgstr "赋值已经被传递给一个空的(NULL)dt" -#: assign.c:299 +#: assign.c:341 msgid "dt passed to assign isn't type VECSXP" msgstr "传递给赋值操作的dt不是VECSXP类型" -#: assign.c:301 +#: 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, " @@ -155,15 +189,15 @@ msgstr "" ".SD被锁定。 使用':='更新.SD操作保留将来使用对'j'直接使用':=', 或可以使用" "copy(.SD), 直到导出shallow()" -#: assign.c:309 +#: assign.c:351 msgid "Internal error: dt passed to Cassign is not a data.table or data.frame" msgstr "内部错误: 传递给赋值操作的dt不是data.table或data.frame类型" -#: assign.c:313 +#: assign.c:355 msgid "dt passed to assign has no names" msgstr "传递给赋值操作的dt没有命名" -#: assign.c:317 +#: 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." @@ -171,18 +205,18 @@ msgstr "" "data.table为空, 格式错误,一个null的data.table应该为空的列表list即对data." "table使用typeof()函数应该返回'list'类型" -#: assign.c:326 +#: assign.c:369 #, c-format msgid "Assigning to all %d rows\n" msgstr "为所有的%d行赋值\n" -#: assign.c:331 +#: assign.c:374 msgid "" "Coerced i from numeric to integer. Please pass integer for efficiency; e.g., " "2L rather than 2" msgstr "将i由数值型强制转换为整数型。请直接传入整数以提高效率,如传入2L而非2" -#: assign.c:334 +#: assign.c:377 #, c-format msgid "" "i is type '%s'. Must be integer, or numeric is coerced with warning. If i is " @@ -193,26 +227,26 @@ msgstr "" "整型并发出警告)。如果 i 为一个用于筛选的逻辑(logical)向量,请直接将它传给 " "which(),且如果可能的话将 which() 放置于循环之外以保持高效。" -#: assign.c:340 subset.c:165 +#: 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 ,超出 [1,nrow=%d] 的范围" -#: assign.c:343 +#: assign.c:386 #, c-format msgid "Assigning to %d row subset of %d rows\n" msgstr "正在为 %d 行(总数为 %d 行)进行赋值\n" -#: assign.c:351 +#: assign.c:394 #, c-format msgid "Added %d new column%s initialized with all-NA\n" msgstr "添加了 %d 个新列 %s 并全部初始化为 NA\n" -#: assign.c:356 +#: assign.c:399 msgid "length(LHS)==0; no columns to delete or assign RHS to." msgstr "左手侧长度为0(length(LHS)==0);没有列可供删除或赋值给右手侧(RHS)。" -#: assign.c:370 +#: 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 " @@ -222,7 +256,7 @@ msgstr "" "table 来添加新列。data.table 的操作是超额分配的(over-allocated)并且不进行浅" "拷贝(shallow copy)。" -#: assign.c:381 +#: assign.c:424 msgid "" "Coerced j from numeric to integer. Please pass integer for efficiency; e.g., " "2L rather than 2" @@ -230,7 +264,7 @@ msgstr "" "将 j 从数值(numeric)型自动转换为整(integer)型。为了保持高效请直接传入整" "型,如2L 而非 2" -#: assign.c:384 +#: assign.c:427 #, c-format msgid "" "j is type '%s'. Must be integer, character, or numeric is coerced with " @@ -239,22 +273,22 @@ msgstr "" "j 为 '%s' 型。j 必须为整(integer)型、字符(character)型,或数值(numeric)" "型(将被自动转换成整型并发出警告)。" -#: assign.c:386 +#: assign.c:429 msgid "" "Can't assign to the same column twice in the same query (duplicates " "detected)." msgstr "在一次查询中无法对同一列赋值两次(检测出重复项)。" -#: assign.c:387 +#: assign.c:430 msgid "newcolnames is supplied but isn't a character vector" msgstr "指定了 newcolnames 但其并非一字符串向量" -#: assign.c:389 +#: assign.c:432 #, c-format msgid "RHS_list_of_columns == %s\n" msgstr "RHS_list_of_columns == %s\n" -#: assign.c:394 +#: assign.c:437 #, c-format msgid "" "RHS_list_of_columns revised to true because RHS list has 1 item which is " @@ -263,7 +297,7 @@ msgstr "" "RHS_list_of_columns 改为真(True),因为右手侧列表(RHS list)有一子项为空值" "(NULL)或长度 %d 为 1 或 targetlen(%d)。请拆开右手侧。\n" -#: assign.c:399 +#: assign.c:442 #, c-format msgid "" "Supplied %d columns to be assigned an empty list (which may be an empty data." @@ -274,19 +308,19 @@ msgstr "" "后两者也是列表的一种)。删除多个列时请使用空值(NULL)。添加多个空列表列" "(list columns)时,请使用 list(list())。" -#: assign.c:404 +#: assign.c:447 #, c-format msgid "Recycling single RHS list item across %d columns. Please unwrap RHS.\n" msgstr "" "回收重用(Recycling)单个右手侧(RHS)列表子项于 %d 列。请拆开右手侧。\n" -#: assign.c:406 +#: assign.c:449 #, c-format msgid "" "Supplied %d columns to be assigned %d items. Please see NEWS for v1.12.2." msgstr "试图将 %2$d 项赋值给 %1$d 列。请阅读 v1.12.2 的更新信息(NEWS)。" -#: assign.c:414 +#: assign.c:457 #, c-format msgid "" "Item %d of column numbers in j is %d which is outside range [1,ncol=%d]. " @@ -296,7 +330,7 @@ msgstr "" "j 中的列编号里第 %d 项是 %d,超出了有效范围 [1,ncol=%d]。数据框(data.frame)" "的 set() 是用于修改现有列,而非添加新列。请使用 data.table 来添加新列。" -#: assign.c:415 +#: assign.c:458 #, c-format msgid "" "Item %d of column numbers in j is %d which is outside range [1,ncol=%d]. Use " @@ -305,11 +339,11 @@ msgstr "" "j 中的列编号里第 %d 项是 %d,超出了有效范围 [1,ncol=%d]。请在 j 中使用列名来" "添加新列。" -#: assign.c:420 +#: assign.c:463 msgid "When deleting columns, i should not be provided" msgstr "当删除列时,不应指定 i" -#: assign.c:426 +#: assign.c:469 #, c-format msgid "" "RHS of assignment to existing column '%s' is zero length but not NULL. If " @@ -325,23 +359,24 @@ msgstr "" "一个与该列原数据等长的向量,如 vector('list',nrow(DT)),即,用新数据替换" "(plonk)重新生成该列。" -#: assign.c:431 +#: assign.c:474 #, c-format msgid "" "Internal error in assign.c: length(newcolnames)=%d, length(names)=%d, coln=%d" msgstr "assign.c 内部错误:length(newcolnames)=%d, length(names)=%d, coln=%d" -#: assign.c:433 +#: assign.c:476 #, c-format -msgid "Column '%s' does not exist to remove" +msgid "" +"Tried to assign NULL to column '%s', but this column does not exist to remove" msgstr "要删除的列 '%s' 不存在" -#: assign.c:441 +#: assign.c:484 #, c-format msgid "%d column matrix RHS of := will be treated as one vector" msgstr "':=' 右手侧(RHS)%d 列矩阵将被视为一维向量" -#: assign.c:446 +#: assign.c:489 #, c-format msgid "" "Can't assign to column '%s' (type 'factor') a value of type '%s' (not " @@ -350,7 +385,7 @@ msgstr "" "无法给因子(factor)类型列 '%s' 赋类型为 '%s' 的值(不是字符(character)、因" "子(factor)、整数(integer)或数值(numeric)类中的一种)" -#: assign.c:452 +#: assign.c:495 #, c-format msgid "" "Supplied %d items to be assigned to %d items of column '%s'. If you wish to " @@ -360,7 +395,7 @@ msgstr "" "试图将 %d 项赋值给 %d 项(列 '%s')。如果想'回收重用'('recycle')右手侧,请" "使用 rep() 以将该意图清晰地表述给阅读代码的人。" -#: assign.c:462 +#: 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() " @@ -371,7 +406,7 @@ msgstr "" "structure() )。在通过引用的方式进行赋值前,请先运行 setDT() 或 setalloccol() " "来为增加的列预先分配空间" -#: assign.c:463 +#: assign.c:506 #, c-format msgid "" "Internal error: oldtncol(%d) < oldncol(%d). Please report to data.table " @@ -380,7 +415,7 @@ msgstr "" "内部错误: oldtncol(%d) < oldncol(%d)。 请将此问题汇报给 data.table 问题追踪" "器,包括 sessionInfo() 的信息。" -#: assign.c:465 +#: assign.c:508 #, c-format msgid "" "truelength (%d) is greater than 10,000 items over-allocated (length = %d). " @@ -392,7 +427,7 @@ msgstr "" "truelength。如果你没有将 datatable.alloccol 设置为非常大的数值,请将此问题汇" "报给 data.table 问题追踪器,包含 sessionInfo() 的信息" -#: assign.c:467 +#: assign.c:510 #, c-format msgid "" "Internal error: DT passed to assign has not been allocated enough column " @@ -400,7 +435,7 @@ msgid "" msgstr "" "内部错误: 传递出去赋值的 DT 没有被分配足够的列槽。 l=%d, tl=%d, 增加 %d" -#: assign.c:469 +#: 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 " @@ -410,18 +445,18 @@ msgstr "" "names<- 或 colnames<- 进行赋值。如果该办法无效,请将此问题汇报给 data.table " "问题追踪器,包含 sessionInfo() 的信息" -#: assign.c:474 +#: assign.c:517 #, c-format msgid "Internal error: selfrefnames is ok but tl names [%lld] != tl [%d]" msgstr "内部错误: selfrefnames 正确,但 tl 的名称 [%lld] != tl [%d]" -#: assign.c:493 +#: assign.c:536 msgid "" "Internal error: earlier error 'When deleting columns, i should not be " "provided' did not happen." msgstr "内部错误: 前期的错误 '当删除列的时候,不应该提供参数 i ' 没有发生" -#: assign.c:504 +#: assign.c:547 #, c-format msgid "" "RHS for item %d has been duplicated because NAMED==%d MAYBE_SHARED==%d, but " @@ -430,12 +465,12 @@ msgstr "" "因为 NAMED==%d MAYBE_SHARED==%d, 所以条目 %d 的 RHS 已经被复制,但是接下来又" "要被替换了。length(values)==%d; length(cols)==%d)\n" -#: assign.c:509 +#: assign.c:552 #, c-format msgid "Direct plonk of unnamed RHS, no copy. NAMED==%d, MAYBE_SHARED==%d\n" msgstr "直接替换没有名字的 RHS,并没有复制。 NAMED==%d, MAYBE_SHARED==%d\n" -#: assign.c:578 +#: assign.c:621 #, c-format msgid "" "Dropping index '%s' as it doesn't have '__' at the beginning of its name. It " @@ -444,29 +479,29 @@ msgstr "" "丢掉索引(index) '%s' 因为它的名字前面没有 '__' 。这个很可能由data.table " "v1.9.4 创建\n" -#: assign.c:586 +#: assign.c:629 msgid "Internal error: index name ends with trailing __" msgstr "内部错误: 索引(index)名称以 __ 结尾" -#: assign.c:591 +#: assign.c:634 msgid "Internal error: Couldn't allocate memory for s4." msgstr "内部错误: 不能给 s4 分配内存" -#: assign.c:602 +#: assign.c:645 msgid "Internal error: Couldn't allocate memory for s5." msgstr "内部错误: 不能给 s5 分配内存" -#: assign.c:623 assign.c:639 +#: assign.c:666 assign.c:682 #, c-format msgid "Dropping index '%s' due to an update on a key column\n" msgstr " 因为一个键(key)列的更新,丢掉索引(index) '%s'\n" -#: assign.c:632 +#: assign.c:675 #, c-format msgid "Shortening index '%s' to '%s' due to an update on a key column\n" msgstr "因为一个键(key)列的更新,缩短索引(index) '%s' 到 '%s'\n" -#: assign.c:662 +#: assign.c:705 #, c-format msgid "" "Internal error: %d column numbers to delete not now in strictly increasing " @@ -474,37 +509,37 @@ msgid "" msgstr "" "内部错误:指定 %d 删除列的序号目前并非严格升序排列。重复项已于之前检查过。" -#: assign.c:690 +#: assign.c:733 #, c-format msgid "target vector" msgstr "目标向量" -#: assign.c:690 +#: assign.c:733 #, c-format msgid "column %d named '%s'" msgstr "第 %d 列名为 '%s'" -#: assign.c:706 +#: assign.c:749 #, c-format msgid "" "Internal error memrecycle: sourceStart=%d sourceLen=%d length(source)=%d" msgstr "memrecycle 内部错误:sourceStart=%d sourceLen=%d length(source)=%d" -#: assign.c:708 +#: assign.c:751 #, c-format msgid "Internal error memrecycle: start=%d len=%d length(target)=%d" msgstr "memrecycle 内部错误:start=%d len=%d length(target)=%d" -#: assign.c:711 +#: assign.c:754 #, c-format msgid "Internal error: recycle length error not caught earlier. slen=%d len=%d" msgstr "内部错误: 早期未被发现的循环长度错误 slen=%d len=%d" -#: assign.c:715 +#: assign.c:758 msgid "Internal error: memrecycle has received NULL colname" msgstr "内部错误: memrecycle 接受到的列名为 NULL " -#: assign.c:724 +#: assign.c:767 #, c-format msgid "" "Cannot assign 'factor' to '%s'. Factors can only be assigned to factor, " @@ -512,22 +547,20 @@ msgid "" msgstr "" "不能将 'factor' 赋值为 '%s' 。因子类型只能赋值为因子,字符或者列表其中的列" -#: assign.c:738 +#: assign.c:781 #, c-format msgid "" "Assigning factor numbers to %s. But %d is outside the level range [1,%d]" msgstr "%s 赋值为因子。但是 %d 在层次范围[1,%d]之外" -#: assign.c:747 +#: 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 "" -"%s 赋值为因子。但是 %f 在层次范围[1,%d]之外,或者不是一个完" -"整的数字" +msgstr "%s 赋值为因子。但是 %f 在层次范围[1,%d]之外,或者不是一个完整的数字" -#: assign.c:753 +#: assign.c:796 #, c-format msgid "" "Cannot assign '%s' to 'factor'. Factor columns can be assigned factor, " @@ -535,56 +568,55 @@ msgid "" msgstr "" "不能将 'factor' 赋值为 '%s' 。 因子列可被赋值为因子,字符 ,NA 或者 层次数值" -#: assign.c:774 +#: assign.c:817 msgid "" "Internal error: levels of target are either not unique or have truelength<0" msgstr "内部错误: 目标的层次不是唯一或者长度<0" -#: assign.c:813 +#: assign.c:856 msgid "Unable to allocate working memory of %zu bytes to combine factor levels" msgstr "不能分配 %zu 字节的工作内存来组合因子层次" -#: assign.c:820 +#: assign.c:863 msgid "Internal error: extra level check sum failed" msgstr "内部错误: 额外的层次校验和失败" -#: assign.c:839 +#: assign.c:882 #, c-format msgid "Coercing 'character' RHS to '%s' to match the type of %s." msgstr "将'character' RHS 强制转换成 '%s' 来匹配目标列 %s 的类型" -#: assign.c:846 +#: assign.c:889 #, c-format msgid "Cannot coerce 'list' RHS to 'integer64' to match the type of %s." -msgstr "" -"不能将'list' RHS 强制转换成 'integer64' 来匹配目 %s 的类型" +msgstr "不能将'list' RHS 强制转换成 'integer64' 来匹配目 %s 的类型" -#: assign.c:851 +#: assign.c:894 #, c-format msgid "Coercing 'list' RHS to '%s' to match the type of %s." msgstr "将'list' RHS 强制转换成 '%s' 来匹配目 %s 的类型" -#: assign.c:856 +#: assign.c:899 #, c-format msgid "Zero-copy coerce when assigning '%s' to '%s' %s.\n" msgstr "在 %s 中将 '%s' 赋值成 '%s' 时发生了零拷贝强制转换。\n" -#: assign.c:958 +#: assign.c:1001 #, c-format msgid "type '%s' cannot be coerced to '%s'" msgstr "类型 '%s' 不能强制转换成 '%s'" -#: assign.c:1116 +#: assign.c:1159 #, c-format msgid "Unsupported column type in assign.c:memrecycle '%s'" msgstr "assign.c:memrecycle '%s' 里有不支持的列的类型" -#: assign.c:1170 +#: assign.c:1213 #, c-format msgid "Internal error: writeNA passed a vector of type '%s'" msgstr "内部错误:writeNA 函数读取到了一个类型是'%s'的向量" -#: assign.c:1201 +#: assign.c:1244 #, c-format msgid "" "Internal error: savetl_init checks failed (%d %d %p %p). please report to " @@ -593,12 +625,12 @@ msgstr "" "内部错误:savetl_init的校验失败 (%d %d %p %p),请将此问题汇报给data.table 问" "题追踪器。" -#: assign.c:1209 +#: assign.c:1252 #, c-format msgid "Failed to allocate initial %d items in savetl_init" msgstr "不能为 savetl_init 最开始的 %d 个项分配空间" -#: assign.c:1218 +#: assign.c:1261 #, c-format msgid "" "Internal error: reached maximum %d items for savetl. Please report to data." @@ -607,34 +639,34 @@ msgstr "" "内部错误:已经达到了 savetl 能处理的子项上限 %d。请将此问题汇报给data.table问" "题追踪器。" -#: assign.c:1225 +#: assign.c:1268 #, c-format msgid "Failed to realloc saveds to %d items in savetl" msgstr "不能给 savetl 里的 %d 个项重新分配 saveds" -#: assign.c:1231 +#: assign.c:1274 #, c-format msgid "Failed to realloc savedtl to %d items in savetl" msgstr "不能给savetl里的 %d 个项提供 savetl" -#: assign.c:1254 +#: assign.c:1297 msgid "x must be a character vector" msgstr "x 必须是一个字符向量" -#: assign.c:1255 +#: assign.c:1298 msgid "'which' must be an integer vector" msgstr "'which' 必须是一个整数向量" -#: assign.c:1256 +#: assign.c:1299 msgid "'new' must be a character vector" msgstr "'new' 必须是一个字符向量" -#: assign.c:1257 +#: assign.c:1300 #, c-format msgid "'new' is length %d. Should be the same as length of 'which' (%d)" msgstr "'new' 的长度是 %d。 它的长度必须和'which' (%d)的长度一致。" -#: assign.c:1260 +#: assign.c:1303 #, c-format msgid "" "Item %d of 'which' is %d which is outside range of the length %d character " @@ -815,7 +847,7 @@ msgid "Internal error: nqgrpArg must be an integer vector" msgstr "内部错误:nqgrpArg 必须为一个整数向量" #: bmerge.c:124 -msgid "Intrnal error: nqmaxgrpArg is not a positive length-1 integer vector" +msgid "Internal error: nqmaxgrpArg is not a positive length-1 integer vector" msgstr "内部错误:nqmaxgrpArg不是长度为1的正整型向量" #: bmerge.c:133 @@ -1028,23 +1060,34 @@ msgstr "length(xSD)[%d] != length(xjiscols)[%d]" msgid "j evaluates to type '%s'. Must evaluate to atomic vector or list." msgstr "j的运算结果为'%s'类型。其运算结果必须为原子向量或列表。" -#: dogroups.c:279 +#: dogroups.c:280 +#, c-format msgid "" -"All items in j=list(...) should be atomic vectors or lists. If you are " -"trying something like j=list(.SD,newcol=mean(colA)) then use := by group " +"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 "" -"j=list(...) 中的所有项目必须是原子向量或列表如果您试图进行 j=list(.SD," +"j=list(...) 里的 %d 组的第 %d 项目本该是原子向量或列表。如果您在试图进行 j=list(.SD," "newcol=mean(colA)) 之类的操作请使用 := by group 代替(更快速),或事后使用 " "cbind()、merge()" -#: dogroups.c:288 +#: 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 "" +"j=list(...) 里的 %d 组的第 %d 项目本是一个 %d 维度 > 1 的排列,这" +"是不允许的。如果这是故意的话请使用 c() 或 as.vector() 来分裂该数组" + +#: dogroups.c:297 msgid "" "RHS of := is NULL during grouped assignment, but it's not possible to delete " "parts of a column." msgstr "用 := 分组时 RHS 为 NULL但無法刪除部分列" -#: dogroups.c:292 +#: dogroups.c:301 #, c-format msgid "" "Supplied %d items to be assigned to group %d of size %d in column '%s'. The " @@ -1056,7 +1099,7 @@ msgstr "" "须是 1(可以是单个值) 或完全符合 LHS 的长度如果您想回收(recycle) RHS,请使用 " "rep() 向你的代码读者明确表达你的意图" -#: dogroups.c:303 +#: 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 " @@ -1065,16 +1108,16 @@ msgstr "" "内部错误 : 尝试依照引用增加新列但 tl 已满在进入 dogroups 之前,setalloccol 应" "该先在 R 运行" -#: dogroups.c:324 +#: dogroups.c:333 #, c-format msgid "Group %d column '%s': %s" msgstr "列 '%2$s' 第 %1$d 组 : %3$s" -#: dogroups.c:331 +#: dogroups.c:340 msgid "j doesn't evaluate to the same number of columns for each group" msgstr "j 估算出的每组的列数不同" -#: dogroups.c:365 +#: dogroups.c:374 #, c-format msgid "" "Column %d of j's result for the first group is NULL. We rely on the column " @@ -1088,7 +1131,7 @@ msgstr "" "(需要一致性)空 (NULL) 列可以出现在后面的组(适当的以 NA 取代并回收)但不能是第 " "1 组请输入空向量代替,例如 integer() 或 numeric()" -#: dogroups.c:368 +#: 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 " @@ -1097,7 +1140,7 @@ msgstr "" "j 是名称向量,这可能使相同的名称不停重复创建导致速度变慢请尝试输入名称列表(较" "适合 data.table)或是非名称列表代替\n" -#: dogroups.c:370 +#: dogroups.c:379 #, c-format msgid "" "Column %d of j is a named vector (each item down the rows is named, " @@ -1107,7 +1150,7 @@ msgstr "" "j 的第 %d 列是名称向量(整行的项都是名称)为了效率请移除这些名称(避免在每组重复" "创建这些名称)总之他们被忽略了\n" -#: dogroups.c:378 +#: 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 " @@ -1119,17 +1162,17 @@ msgstr "" "j=list(...) 时侦测到的所有名称会被移出,待分组完成后再放回来可以使用 " "j=transform() 避免这种加速此讯息可能会在未来升级为警告\n" -#: dogroups.c:390 +#: dogroups.c:399 #, c-format msgid "dogroups: growing from %d to %d rows\n" msgstr "dogroups: 从 %d 列增加至 %d 列\n" -#: dogroups.c:391 +#: 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:409 +#: dogroups.c:418 #, c-format msgid "" "Item %d of j's result for group %d is zero length. This will be filled with " @@ -1140,7 +1183,7 @@ msgstr "" "j 的结果第 %d 项在第 %d 组中为零长度(zero length)将使用 %d 个 NA 填入以符合结" "果中最长列的长度后面的分组也有相同问题,但只回报第一组以避免过多警告" -#: dogroups.c:416 +#: dogroups.c:425 #, c-format msgid "" "Column %d of result for group %d is type '%s' but expecting type '%s'. " @@ -1149,7 +1192,7 @@ msgstr "" "结果的第 %d 列在第 %d 组中是 '%s' 类别而非预期的 '%s' 类别所有组的列类别必须" "一致" -#: dogroups.c:418 +#: dogroups.c:427 #, c-format msgid "" "Supplied %d items for column %d of group %d which has %d rows. The RHS " @@ -1161,17 +1204,17 @@ msgstr "" "單個值) 或與 LHS 長度完全匹配如果您想回收(recycle) RHS,请使用 rep() 向你的代" "码读者明确表达你的意图" -#: dogroups.c:439 +#: dogroups.c:448 #, c-format msgid "Wrote less rows (%d) than allocated (%d).\n" msgstr "写入的行 (%d) 少于分配的 (%d)\n" -#: dogroups.c:461 +#: dogroups.c:470 #, c-format msgid "Internal error: block 0 [%d] and block 1 [%d] have both run" msgstr "内部错误 : 区块 0 [%d] 与区块 1 [%d] 都运行了" -#: dogroups.c:463 +#: dogroups.c:472 #, c-format msgid "" "\n" @@ -1180,23 +1223,24 @@ msgstr "" "\n" " %s 花了 %.3fs 在 %d 个组\n" -#: dogroups.c:465 +#: dogroups.c:474 #, c-format msgid " eval(j) took %.3fs for %d calls\n" msgstr " eval(j)取%.3fs给 %d 调用\n" -#: dogroups.c:489 +#: dogroups.c:498 msgid "growVector passed NULL" msgstr "growVector通过NULL" -#: dogroups.c:509 +#: dogroups.c:518 #, c-format msgid "Internal error: growVector doesn't support type '%s'" msgstr "内部错误:growVector 不支持 '%s' 类型" -#: fastmean.c:39 -msgid "narm should be TRUE or FALSE" -msgstr "narm必须是TRUE或FALSE" +#: fastmean.c:39 rbindlist.c:8 +#, c-format +msgid "%s should be TRUE or FALSE" +msgstr "%s 必须是TRUE或FALSE" #: fastmean.c:45 #, c-format @@ -1208,7 +1252,7 @@ msgstr "传递给 fastmean 的是 %s 类型,而不是数值或逻辑类型" msgid "Internal error: type '%s' not caught earlier in fastmean" msgstr "内部错误:先前fastmean没有侦测到类型 '%s' " -#: fcast.c:92 +#: fcast.c:101 #, c-format msgid "Unsupported column type in fcast val: '%s'" msgstr "fcast val不支持的列类型:'%s'" @@ -1449,7 +1493,7 @@ msgstr "找不到'id.vars'。将指定所有'measure.vars'以外的所有列为' msgid "Assigned 'id.vars' are [%s].\n" msgstr "指定的 'id.vars' 是 [%s].\n" -#: fmelt.c:311 +#: fmelt.c:313 msgid "" "When 'measure.vars' is a list, 'value.name' must be a character vector of " "length =1 or =length(measure.vars)." @@ -1457,7 +1501,7 @@ msgstr "" "当'measure.vars'是一个列表(list), 'value.name' 必须是一个长度为1或者等于" "length(measure.vars)的字符向量" -#: fmelt.c:312 +#: 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." @@ -1465,17 +1509,17 @@ msgstr "" "当'measure.vars'未被指定或者是一个字符/整数向量时,'value.name'必须是一个长度" "1的字符/整数向量" -#: fmelt.c:315 +#: fmelt.c:317 msgid "'variable.name' must be a character/integer vector of length 1." msgstr "'variable.name' 必须是长度1的字符/整数向量。" -#: fmelt.c:368 +#: fmelt.c:370 msgid "" "variable_table attribute of measure.vars should be a data table with at " "least one column" msgstr "measure.vars 的 variable_table 属性应为一个至少有一列的 data.table" -#: fmelt.c:373 +#: fmelt.c:375 #, c-format msgid "" "variable_table attribute of measure.vars should be a data table with same " @@ -1484,24 +1528,24 @@ msgstr "" "measure.vars 的 variable_table 属性应为一个 data.table,且该 data.table 的行" "应与 measure.vars 向量中的最大长度(=%d)一致" -#: fmelt.c:377 +#: fmelt.c:379 msgid "" "variable_table attribute of measure.vars should be either NULL or a data " "table" msgstr "measure.vars 的 variable_table 属性应为 NULL 或一个 data.table" -#: fmelt.c:394 +#: fmelt.c:396 msgid "" "Internal error: combineFactorLevels in fmelt.c expects all-character input" msgstr "内部错误:fmelt.c里的combineFactorLevels期望输入值为全字符" -#: fmelt.c:397 +#: fmelt.c:399 msgid "" "Internal error: combineFactorLevels in fmelt.c expects a character target to " "factorize" msgstr "内部错误:fmelt.c里的combineFactorLevels期望一个字符来分解" -#: fmelt.c:460 +#: fmelt.c:462 #, c-format msgid "" "'measure.vars' [%s] are not all of the same type. By order of hierarchy, the " @@ -1513,59 +1557,59 @@ msgstr "" "以变量中不是'%3$s'类型的数将被强制转换为'%2$s'类型,更多关于强制转换的信息请" "查看 ?melt.data.table.\n" -#: fmelt.c:572 +#: fmelt.c:574 #, c-format msgid "Unknown column type '%s' for column '%s'." msgstr "'%s'列是未知的纵列类型: '%s'" -#: fmelt.c:593 +#: fmelt.c:595 #, c-format msgid "Internal error: fmelt.c:getvarcols %d %d" msgstr "内部错误:fmelt.c : getvarcols %d %d" -#: fmelt.c:679 +#: fmelt.c:681 #, c-format msgid "variable_table does not support column type '%s' for column '%s'." msgstr "variable_table 不支持列 '%2$s' 所包含的数据类型 '%1$s'。" -#: fmelt.c:773 +#: fmelt.c:775 #, c-format msgid "Unknown column type '%s' for column '%s' in 'data'" msgstr "'data' 中的'%s'列是未知列类型:'%s'" -#: fmelt.c:784 +#: fmelt.c:786 msgid "Input is not of type VECSXP, expected a data.table, data.frame or list" msgstr "输入类型不是 VECSXP,输入类型应该是 data.table,data.frame 或 list。" -#: fmelt.c:785 +#: fmelt.c:787 msgid "Argument 'value.factor' should be logical TRUE/FALSE" msgstr "'value.factor' 的参数是逻辑值,必须是 TRUE 或FALSE" -#: fmelt.c:786 +#: fmelt.c:788 msgid "Argument 'variable.factor' should be logical TRUE/FALSE" msgstr "'variable.factor' 的参数是逻辑值,必须是 TRUE 或FALSE" -#: fmelt.c:787 +#: fmelt.c:789 msgid "Argument 'na.rm' should be logical TRUE/FALSE." msgstr "'na.rm' 的参数是逻辑值,必须是 TRUE 或 FALSE" -#: fmelt.c:788 +#: fmelt.c:790 msgid "Argument 'variable.name' must be a character vector" msgstr "'variable.name' 必须是字符串类型" -#: fmelt.c:789 +#: fmelt.c:791 msgid "Argument 'value.name' must be a character vector" msgstr "'value.name' 必须是字符串类型" -#: fmelt.c:790 +#: fmelt.c:792 msgid "Argument 'verbose' should be logical TRUE/FALSE" msgstr "'verbose' 的参数是逻辑值,必须是 TRUE 或 FALSE" -#: fmelt.c:794 +#: fmelt.c:796 msgid "ncol(data) is 0. Nothing to melt. Returning original data.table." msgstr "ncol(data)为0,返回原 data.table" -#: fmelt.c:799 +#: fmelt.c:801 msgid "names(data) is NULL. Please report to data.table-help" msgstr "names(data)为NULL,请向 data.table-help 报告" @@ -1626,16 +1670,16 @@ msgstr "必须是长度为1的整数或数字向量" msgid "Must be 2, 1 or 0" msgstr "必须是2、1或者0" -#: forder.c:404 +#: forder.c:405 msgid "Unknown non-finite value; not NA, NaN, -Inf or +Inf" msgstr "未知的取值范围,不属于 NA, NaN, -Inf 或 +Inf" -#: forder.c:426 +#: forder.c:427 msgid "" "Internal error: input is not either a list of columns, or an atomic vector." msgstr "内部错误:输入值既不是列表中的一列,也不是原子向量" -#: forder.c:428 +#: forder.c:429 msgid "" "Internal error: input is an atomic vector (not a list of columns) but by= is " "not NULL" @@ -1643,73 +1687,74 @@ msgstr "" "内部错误:输入值是一个原子向量(而不是列表中的一列),但是'by' 的参数是列表而不" "是NULL" -#: forder.c:430 +#: forder.c:431 msgid "" "Input is an atomic vector (not a list of columns) but order= is not a length " "1 integer" msgstr "" "输入值是一个原子向量(而不是列表中的一列),但参数 order不是长度为1的整数" -#: forder.c:432 +#: forder.c:433 #, c-format msgid "forder.c received a vector type '%s' length %d\n" msgstr "forder.c 接收到一个类型为'%s'长度为%d的向量\n" -#: forder.c:440 +#: forder.c:441 #, c-format msgid "forder.c received %d rows and %d columns\n" msgstr "forder.c 接收到%d行和%d列\n" -#: forder.c:443 +#: forder.c:444 msgid "Internal error: DT is an empty list() of 0 columns" msgstr "内部错误:DT 是一个0列的空 list" -#: forder.c:445 +#: forder.c:446 #, c-format msgid "" "Internal error: DT has %d columns but 'by' is either not integer or is " "length 0" msgstr "内部错误:DT 内部有%d列,但参数 'by' 不是整数或长度为0" -#: forder.c:447 +#: forder.c:448 #, c-format msgid "" "Either order= is not integer or its length (%d) is different to by='s length " "(%d)" msgstr "参数 order 不是整数,或者它的长度(%d)与参数 'by' 指定的长度(%d)不同" -#: forder.c:453 +#: forder.c:454 #, c-format msgid "internal error: 'by' value %d out of range [1,%d]" msgstr "内部错误:参数 'by' 的值%d超出[1,%d]的范围" -#: forder.c:455 +#: 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 "第 %d 列的长度是 %d,与第 1 列的长度(%d)不同。你是在尝试通过一个列表类" -"型的列来排序吗?\n" +msgstr "" +"第 %d 列的长度是 %d,与第 1 列的长度(%d)不同。你是在尝试通过一个列表类型的列" +"来排序吗?\n" -#: forder.c:465 +#: forder.c:466 msgid "At least one of retGrp= or sort= must be TRUE" msgstr "retGrp 和sort 的参数中,至少一个必须是 TRUE" -#: forder.c:467 +#: forder.c:468 msgid "na.last must be logical TRUE, FALSE or NA of length 1" msgstr "na.last 的参数必须是逻辑值 TRUE, FALSE 或 NA " -#: forder.c:495 forder.c:599 +#: forder.c:496 forder.c:600 #, c-format msgid "Unable to allocate % bytes of working memory" msgstr "无法分配%字节的工作内存" -#: forder.c:511 +#: forder.c:512 #, c-format msgid "Item %d of order (ascending/descending) is %d. Must be +1 or -1." msgstr "排序(ascending/descending)选项%d是%d,必须是+1 or -1" -#: forder.c:537 +#: forder.c:538 #, c-format msgid "" "\n" @@ -1721,82 +1766,82 @@ msgstr "" "***传递给 forder 的%d列是一个没有小数的8字节 double 类型的日期数据,请考虑使" "用4字节的整数日期(例如IDate)以节省空间和时间\n" -#: forder.c:553 +#: forder.c:554 #, c-format msgid "Column %d passed to [f]order is type '%s', not yet supported." msgstr "传递给 [f]order 的第%d列为 '%s'类型,目前尚不支持。" -#: forder.c:706 +#: forder.c:707 msgid "Internal error: column not supported, not caught earlier" msgstr "内部错误:列有不支持类型,未被前置识别" -#: forder.c:714 +#: forder.c:715 #, c-format msgid "nradix=%d\n" msgstr "nradix=%d\n" -#: forder.c:721 +#: forder.c:722 #, c-format msgid "" "Failed to allocate TMP or UGRP or they weren't cache line aligned: nth=%d" msgstr "分配TMP或UGRP失败或缓存行不一致: nth=%d" -#: forder.c:727 +#: forder.c:728 msgid "Could not allocate (very tiny) group size thread buffers" msgstr "无法分配(极小)块组大小的线程缓冲区" -#: forder.c:788 +#: forder.c:789 #, c-format msgid "Timing block %2d%s = %8.3f %8d\n" msgstr "定时块 %2d%s = %8.3f %8d\n" -#: forder.c:791 +#: forder.c:792 #, c-format msgid "stat[%03d]==%20\n" msgstr "stat[%03d]==%20\n" -#: forder.c:1047 +#: forder.c:1048 #, c-format msgid "Failed to allocate parallel counts. my_n=%d, nBatch=%d" msgstr "分配并行计算失败,my_n=%d, nBatch=%d" -#: forder.c:1156 +#: forder.c:1157 #, c-format msgid "Unable to allocate TMP for my_n=%d items in parallel batch counting" msgstr "无法分配TMP给并行批处理计算的 my_n=%d 项" -#: forder.c:1264 +#: forder.c:1265 msgid "Internal error: issorted 'by' must be NULL or integer vector" msgstr "内部错误:issorted 参数 'by' 须为 NULL 或一个整数向量" -#: forder.c:1268 forder.c:1319 +#: forder.c:1269 forder.c:1320 #, c-format msgid "issorted 'by' [%d] out of range [1,%d]" msgstr "issorted 参数 'by' 的值%d超出[1,%d]的范围" -#: forder.c:1273 +#: forder.c:1274 msgid "is.sorted does not work on list columns" msgstr "is.sorted 不支持列表(list)列" -#: forder.c:1306 forder.c:1336 forder.c:1370 +#: forder.c:1307 forder.c:1337 forder.c:1371 #, c-format msgid "type '%s' is not yet supported" msgstr "类型 '%s' 目前不支持" -#: forder.c:1383 +#: forder.c:1384 msgid "x must be either NULL or an integer vector" msgstr "x 必须为空值或整型向量" -#: forder.c:1385 +#: forder.c:1386 msgid "nrow must be integer vector length 1" msgstr "nrow 必须为长度为1的整型向量" -#: forder.c:1387 +#: forder.c:1388 #, c-format msgid "nrow==%d but must be >=0" msgstr "nrow==%d 但是必须 >=0" -#: forder.c:1404 +#: forder.c:1405 msgid "x must be type 'double'" msgstr "x 必须为浮点数类型" @@ -1818,7 +1863,7 @@ msgid "" "that item which is length %d." msgstr "输入列表x的列 %d 长度为 %d,不同于第一列的该项长度为 %d" -#: frank.c:101 frank.c:234 transpose.c:88 +#: frank.c:101 frank.c:234 transpose.c:97 #, c-format msgid "Unsupported column type '%s'" msgstr "不支持的列类型 '%s'" @@ -1836,253 +1881,249 @@ msgstr "" msgid "Internal error: unknown ties value in frank: %d" msgstr "内部错误:frank中有未知的ties值 %d" -#: fread.c:105 +#: fread.c:113 #, c-format msgid "" "Internal error in line %d of fread.c, please report on data.table GitHub: " msgstr "fread.c中%d行出现内部错误,请在 data.table 的 GitHub中提交报告:" -#: fread.c:150 +#: fread.c:159 #, c-format msgid "System error %lu unmapping view of file\n" msgstr "系统错误 %lu 取消映射文件视图\n" -#: fread.c:153 +#: fread.c:162 #, c-format msgid "System errno %d unmapping file: %s\n" msgstr "系统错误 %d 取消映射文件: %s\n" -#: fread.c:213 +#: fread.c:225 #, c-format msgid "Internal error: NUMTYPE(%d) > nLetters(%d)" msgstr "内部错误:NUMTYPE(%d) > nLetters(%d)" -#: fread.c:438 +#: fread.c:450 #, c-format msgid "Unable to allocate %s of contiguous virtual RAM. %s allocation." msgstr "无法分配 %s 的连续虚拟内存。 %s 已分配。" -#: fread.c:443 +#: fread.c:455 #, c-format msgid "Avoidable %.3f seconds. %s time to copy.\n" msgstr "可避免的 %.3f 秒。 %s 复制用时\n" -#: fread.c:444 +#: fread.c:456 #, c-format msgid " File copy in RAM took %.3f seconds.\n" msgstr " 内存上的文件复制耗时 %.3f 秒\n" -#: fread.c:1260 +#: fread.c:1287 msgid "" "Previous fread() session was not cleaned up properly. Cleaned up ok at the " "beginning of this fread() call.\n" msgstr "之前的会话fread()未正确清理。在当前 fread() 会话开始前清理好\n" -#: fread.c:1263 +#: fread.c:1290 msgid "[01] Check arguments\n" msgstr "[01] 参数检查\n" -#: fread.c:1270 +#: fread.c:1297 #, c-format msgid " Using %d threads (omp_get_max_threads()=%d, nth=%d)\n" msgstr " 使用 %d 线程 (omp_get_max_threads()=%d, nth=%d)\n" -#: fread.c:1278 +#: fread.c:1305 msgid "" "Internal error: NAstrings is itself NULL. When empty it should be pointer to " "NULL." msgstr "内部错误:NAstrings 自身为空值。当清空该项会指向NULL空值" -#: fread.c:1292 +#: fread.c:1319 #, c-format msgid "freadMain: NAstring <<%s>> has whitespace at the beginning or end" msgstr "freadMain: NAstring <<%s>> 在开始或者结束处有空白" -#: fread.c:1296 +#: fread.c:1323 #, c-format msgid "" "freadMain: NAstring <<%s>> is recognized as type boolean, this is not " "permitted." msgstr "freadMain: NAstring <<%s>> 被识别为布尔型,这是不允许" -#: fread.c:1298 +#: fread.c:1325 #, c-format msgid "freadMain: NAstring <<%s>> and logical01=TRUE, this is not permitted." msgstr "freadMain: NAstring 为 <<%s>> 同时 logical01=TRUE,不允许这种情况。" -#: fread.c:1310 +#: fread.c:1337 msgid " No NAstrings provided.\n" msgstr " 未提供 NAstrings \n" -#: fread.c:1312 +#: fread.c:1339 msgid " NAstrings = [" msgstr " NAstrings = [" -#: fread.c:1315 +#: fread.c:1342 msgid "]\n" msgstr "]\n" -#: fread.c:1317 +#: fread.c:1344 msgid " One or more of the NAstrings looks like a number.\n" msgstr " 一个或多个 NAstrings 类似数值\n" -#: fread.c:1319 +#: fread.c:1346 msgid " None of the NAstrings look like numbers.\n" msgstr " 没有 NAstrings 为数值\n" -#: fread.c:1321 +#: fread.c:1348 #, c-format msgid " skip num lines = %\n" msgstr " 跳过行数为 %\n" -#: fread.c:1322 +#: fread.c:1349 #, c-format msgid " skip to string = <<%s>>\n" msgstr " 跳转至 string = <<%s>>\n" -#: fread.c:1323 +#: fread.c:1350 #, c-format msgid " show progress = %d\n" msgstr " 显示进程 %d\n" -#: fread.c:1324 +#: fread.c:1351 #, c-format msgid " 0/1 column will be read as %s\n" msgstr " 0/1 列被读取为 %s\n" -#: fread.c:1336 +#: fread.c:1363 #, c-format msgid "sep == quote ('%c') is not allowed" msgstr "sep == quote ('%c') 不被允许" -#: fread.c:1337 -msgid "dec='' not allowed. Should be '.' or ','" -msgstr "dec='' 不允许,应该为 '.' 或者 ','" - -#: fread.c:1338 +#: fread.c:1364 #, c-format msgid "sep == dec ('%c') is not allowed" msgstr "sep == dec ('%c') 不允许" -#: fread.c:1339 +#: fread.c:1365 #, c-format msgid "quote == dec ('%c') is not allowed" msgstr "quote == dec ('%c') 不允许" -#: fread.c:1356 +#: fread.c:1382 msgid "[02] Opening the file\n" msgstr "[02] 打开文件\n" -#: fread.c:1359 +#: fread.c:1385 msgid "" " `input` argument is provided rather than a file name, interpreting as raw " "text to read\n" msgstr "提供 `input` 参数而非文件名,理解为原始的文本读取\n" -#: fread.c:1363 +#: fread.c:1389 msgid "Internal error: last byte of character input isn't \\0" msgstr "内部错误:字符输入的最后一个字节不是 \\0" -#: fread.c:1366 +#: fread.c:1392 #, c-format msgid " Opening file %s\n" msgstr " 打开文件 %s\n" -#: fread.c:1370 fread.c:1395 +#: fread.c:1396 fread.c:1425 #, c-format msgid "File not found: %s" msgstr "文件没有找到:%s" -#: fread.c:1374 +#: fread.c:1400 #, c-format msgid "Opened file ok but couldn't obtain its size: %s" msgstr "文件能够打开但无法获知其大小:%s" -#: fread.c:1377 fread.c:1405 +#: fread.c:1403 fread.c:1435 #, c-format msgid "File is empty: %s" msgstr "文件是空的:%s" -#: fread.c:1378 fread.c:1406 +#: fread.c:1404 fread.c:1436 #, c-format msgid " File opened, size = %s.\n" msgstr " 文件已打开,大小为 %s.\n" -#: fread.c:1401 +#: fread.c:1431 #, c-format msgid "Unable to open file after %d attempts (error %lu): %s" msgstr "经过 %d 次尝试后仍无法打开文件(错误 %lu):%s" -#: fread.c:1403 +#: fread.c:1433 #, c-format msgid "GetFileSizeEx failed (returned 0) on file: %s" msgstr "GetFileSizeEx 未能成功执行(返回值为0)于文件:%s" -#: fread.c:1408 +#: fread.c:1438 #, c-format msgid "This is Windows, CreateFileMapping returned error %lu for file %s" msgstr "现在在Windows下,CreateFileMapping 返回错误 %lu 于文件 %s" -#: fread.c:1415 +#: fread.c:1445 #, c-format msgid "" "Opened %s file ok but could not memory map it. This is a %dbit process. %s." msgstr "能够打开文件 %s 但不能创建内存映射。这是一个 %d 位进程。 %s." -#: fread.c:1416 +#: fread.c:1446 msgid "Please upgrade to 64bit" msgstr "请升级到64位" -#: fread.c:1416 +#: fread.c:1446 msgid "There is probably not enough contiguous virtual memory available" msgstr "多半没有足够的连续虚拟内存" -#: fread.c:1419 +#: fread.c:1449 msgid " Memory mapped ok\n" msgstr " 内存映射正常\n" -#: fread.c:1421 +#: fread.c:1451 msgid "" "Internal error: Neither `input` nor `filename` are given, nothing to read." msgstr "" "内部错误:既没有`input`(输入)也没有`filename`(文件名),没有什么可供读入。" -#: fread.c:1438 +#: fread.c:1468 msgid "[03] Detect and skip BOM\n" msgstr "[03] 检测并跳过字节顺序标记(BOM)\n" -#: fread.c:1442 +#: fread.c:1472 msgid "" " UTF-8 byte order mark EF BB BF found at the start of the file and " "skipped.\n" msgstr "在文件头发现了UTF-8 字节顺序标记(BOM)EF BB BF 并已跳过。\n" -#: fread.c:1447 +#: fread.c:1477 msgid "" "GB-18030 encoding detected, however fread() is unable to decode it. Some " "character fields may be garbled.\n" msgstr "检测到GB-18030 编码,但fread() 未能解码。某些 字符字段可能有乱码。\n" -#: fread.c:1450 +#: 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 "文件编码是UTF-16,fread()不支持此编码。请 将文件转换为UTF-8。" -#: fread.c:1455 +#: fread.c:1485 #, c-format msgid " Last byte(s) of input found to be %s and removed.\n" msgstr " 发现输入的最后字节是 %s 并已去除。\n" -#: fread.c:1458 +#: fread.c:1488 msgid "Input is empty or only contains BOM or terminal control characters" msgstr "输入是空的或只有字节顺序标记(BOM)或终端控制字符" -#: fread.c:1465 +#: fread.c:1495 msgid "[04] Arrange mmap to be \\0 terminated\n" msgstr "[04] 设定mmap为 \\0 终止\n" -#: fread.c:1472 +#: 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 " @@ -2091,7 +2132,7 @@ msgstr "" " 文件中完全没有换行符\\n,所以单个 \\r(如果有的话)将被当成一行的结束。这不" "太常见但如果没有\\r 的话属于正常;例如单个行没有行尾结束符。\n" -#: fread.c:1473 +#: 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 " @@ -2100,7 +2141,7 @@ msgstr "" " 输入中有\\n 并且不同行可以有不同的 行尾结束符(如在一个文件中混合使用 \\n " "和\\r\\n)。这很常见也是理想情况。\n" -#: fread.c:1497 +#: fread.c:1527 #, c-format msgid "" " File ends abruptly with '%c'. Final end-of-line is missing. Using cow page " @@ -2109,7 +2150,7 @@ msgstr "" " 文件突然中止于 '%c'。没有最后一个行尾结束符。正使用写时复制页(cow, copy-" "on-write)写入 0 到最后一个字节。\n" -#: fread.c:1503 +#: 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 " @@ -2118,16 +2159,16 @@ msgstr "" "这个文件非常不正常:它突然中止而没有最后的换行,并且其大小是4096 字节的整数" "倍。请用一个换行(例如 'echo >> file')来恰当地结束最后一行以避免此错误" -#: fread.c:1504 +#: fread.c:1534 #, c-format msgid " File ends abruptly with '%c'. Copying file in RAM. %s copy.\n" msgstr " 文件突然中止于 '%c'。正在从内存中复制文件。%s 复制。\n" -#: fread.c:1538 +#: fread.c:1568 msgid "[05] Skipping initial rows if needed\n" msgstr "[05] 如需要的话跳过起始行\n" -#: fread.c:1544 +#: fread.c:1574 #, c-format msgid "" "skip='%s' not found in input (it is case sensitive and literal; i.e., no " @@ -2136,79 +2177,79 @@ msgstr "" "在输入中没有发现 skip='%s' (这里大小写敏感并需要是字面形式,也就是说不能使用" "模式,适配符或正则表达式)" -#: fread.c:1550 +#: fread.c:1580 #, c-format msgid "" "Found skip='%s' on line %. Taking this to be header row or first row " "of data.\n" msgstr "在行 %2$ 发现了 skip='%1$s'。将此当做表头或数据的第一行。\n" -#: fread.c:1563 +#: fread.c:1593 #, c-format msgid " Skipped to line % in the file" msgstr " 跳到文件的第 % 行" -#: fread.c:1564 +#: fread.c:1594 #, c-format msgid "skip=% but the input only has % line%s" msgstr "skip=% 但输入只有 % 行 %s" -#: fread.c:1573 +#: fread.c:1603 msgid "" "Input is either empty, fully whitespace, or skip has been set after the last " "non-whitespace." msgstr "输入是空,或全部为空白,或跳过设置是在最后一个非空白字符之后。" -#: fread.c:1575 +#: fread.c:1605 #, c-format msgid " Moved forward to first non-blank line (%d)\n" msgstr " 前移到第一个非空行 (%d)\n" -#: fread.c:1576 +#: fread.c:1606 #, c-format msgid " Positioned on line %d starting: <<%s>>\n" msgstr " 定位到行 %d 开始于: <<%s>>\n" -#: fread.c:1594 +#: fread.c:1624 msgid "[06] Detect separator, quoting rule, and ncolumns\n" msgstr "[06] 检测分隔符,引用规则,以及列数\n" -#: fread.c:1598 +#: fread.c:1628 msgid " sep='\\n' passed in meaning read lines as single character column\n" msgstr " sep='\\n' 设定意味着将把所有行读作一个字符列\n" -#: fread.c:1617 +#: fread.c:1647 msgid " Detecting sep automatically ...\n" msgstr " 自动检测分隔符中 ...\n" -#: fread.c:1624 +#: fread.c:1654 #, c-format msgid " Using supplied sep '%s'\n" msgstr " 使用提供的分隔符 '%s'\n" -#: fread.c:1658 +#: fread.c:1688 #, c-format msgid " with %d fields using quote rule %d\n" msgstr " 对 %d 个字段使用引用规则 %d\n" -#: fread.c:1708 +#: fread.c:1738 #, c-format msgid " with %d lines of %d fields using quote rule %d\n" msgstr " 对 %d 行的 %d 字段使用引用规则 %d\n" -#: fread.c:1715 +#: fread.c:1745 msgid "" " No sep and quote rule found a block of 2x2 or greater. Single column " "input.\n" msgstr " 没有分隔符并且引用规则发现了一个大于或等于2x2的区块。输入是单列。\n" -#: fread.c:1731 +#: fread.c:1761 msgid "" "Single column input contains invalid quotes. Self healing only effective " "when ncol>1" msgstr "单列输入包含了不合法的引用。自我修正只有在列数大于1(ncol>1)时才有效" -#: fread.c:1736 +#: fread.c:1766 #, c-format msgid "" "Found and resolved improper quoting in first %d rows. If the fields are not " @@ -2218,35 +2259,35 @@ msgstr "" "在前 %d 行中发现并修正了不合适的引号用法。如果字段没有加引号(例如字段间隔符" "没有在任何字段内出现),可以尝试使用 quote=\"\" 来避免此警告。" -#: fread.c:1752 +#: fread.c:1782 #, c-format msgid "" "Internal error: ncol==%d line==%d after detecting sep, ncol and first line" msgstr "内部错误:检测分隔符,列数和首行后,ncol==%d line==%d" -#: fread.c:1755 +#: fread.c:1785 #, c-format msgid "Internal error: first line has field count %d but expecting %d" msgstr "内部错误:首行有%d个字段,但应该有%d个" -#: fread.c:1757 +#: 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 "检测到第%2$d行有%1$d列。该行为列名或数据集首行。该行以<<%3$s>>开始\n" -#: fread.c:1759 +#: fread.c:1789 #, c-format msgid " Quote rule picked = %d\n" msgstr "标点符号规则 = %d\n" -#: fread.c:1760 +#: fread.c:1790 #, c-format msgid " fill=%s and the most number of columns found is %d\n" msgstr "fill=%s 且找到的最大列数为 %d\n" -#: fread.c:1766 +#: 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." @@ -2254,12 +2295,12 @@ msgstr "" "该文件极为特殊,仅有一列数据,在结尾处包含多个行结束标记(表示多个空值),且" "长度为4096的整数倍。" -#: fread.c:1767 +#: fread.c:1797 #, c-format msgid " Copying file in RAM. %s\n" msgstr "正在将文件拷贝到RAM。%s\n" -#: fread.c:1773 +#: 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" @@ -2267,37 +2308,41 @@ msgstr "" "该文件包含一列数据,存在多个行结束标记(表示多个空值)。正在使用写时复制页" "(cow, copy-on-write)额外的字节恢复最后一个标记.\n" -#: fread.c:1792 +#: fread.c:1822 msgid "" -"[07] Detect column types, good nrow estimate and whether first row is column " -"names\n" -msgstr "[07] 检测列类型,估计行数以及首行是否为列名\n" +"[07] Detect column types, dec, good nrow estimate and whether first row is " +"column names\n" +msgstr "[07] 检测列类型,小数点分隔,良好的行数估计以及首行是否为列名\n" -#: fread.c:1793 +#: fread.c:1823 #, c-format msgid " 'header' changed by user from 'auto' to %s\n" msgstr " 用户已将'header'(列名)从 'auto' 改为 %s\n" -#: fread.c:1797 +#: fread.c:1827 #, c-format msgid "Failed to allocate 2 x %d bytes for type and tmpType: %s" msgstr "为 %2$s 类型分配 2 x %1$d bytes失败" -#: fread.c:1818 +#: fread.c:1831 +msgid " sep=',' so dec set to '.'\n" +msgstr " sep=',' 所以 dec 被设成 '.'\n" + +#: fread.c:1855 #, c-format msgid " Number of sampling jump points = %d because " msgstr "采样跳点数 = %d 因为" -#: fread.c:1819 +#: fread.c:1856 #, c-format msgid "nrow limit (%) supplied\n" msgstr "指定了nrow 的最大值 (%) \n" -#: fread.c:1820 +#: fread.c:1857 msgid "jump0size==0\n" msgstr "jump0size==0\n" -#: fread.c:1821 +#: fread.c:1858 #, c-format msgid "" "(% bytes from row 1 to eof) / (2 * % jump0size) == " @@ -2305,53 +2350,58 @@ msgid "" msgstr "" "(从首行到结束共 % bytes) / (2 * % jump0size) == %\n" -#: fread.c:1859 +#: 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 "第%5$d个跳点所找到的第%4$d行,该行字段过于%1$s(%2$d/%3$d). %6$s\n" -#: fread.c:1860 +#: fread.c:1898 msgid "few" msgstr "少" -#: fread.c:1860 +#: fread.c:1898 msgid "many" msgstr "多" -#: fread.c:1860 +#: fread.c:1898 msgid "" "Most likely this jump landed awkwardly so type bumps here will be skipped." msgstr "很有可能这一跳点的位置并不合适,因此此处的类型转换将被跳过。" -#: fread.c:1886 +#: fread.c:1921 fread.c:1947 +#, c-format +msgid " dec='%c' detected based on a balance of %d parsed fields\n" +msgstr " dec='%c' 因为 %d 个解析字段的余额被检测到\n" + +#: fread.c:1931 #, c-format msgid " Type codes (jump %03d) : %s Quote rule %d\n" msgstr " 类型码(跳点 %03d) : %s 引用规则 %d\n" -#: fread.c:1898 +#: 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' 参数设为真,原因是第%1$d列首行包含字符串,并且在样本中的另外%3$行" -"包含有较底层的数据类型(%2$s)\n" +" 'header' 参数设为真,原因是第%1$d列首行包含字符串,并且在样本中的另" +"外%3$行包含有较底层的数据类型(%2$s)\n" -#: fread.c:1910 +#: fread.c:1965 msgid "" "Internal error: row before first data row has the same number of fields but " "we're not using it." msgstr "内部错误:数据首行的前一行包含相同数量的字段但不会用到该行。" -#: fread.c:1911 +#: fread.c:1966 msgid "" "Internal error: ch!=pos after counting fields in the line before the first " "data row." msgstr "内部错误:对数据首行前一行的字段计数后,ch不等于pos" -#: fread.c:1912 +#: fread.c:1967 #, c-format msgid "" "Types in 1st data row match types in 2nd data row but previous row has %d " @@ -2360,7 +2410,7 @@ msgstr "" "数据第一行的类型与第二行相匹配,但是之前的行有 %d 个字段。故将第一行数据的前" "一行作为列名" -#: fread.c:1915 +#: fread.c:1970 #, c-format msgid "" "Detected %d column names but the data has %d columns (i.e. invalid file). " @@ -2368,7 +2418,7 @@ msgid "" msgstr "" "检测到 %d 个列名,然而数据共有 %d 列(文件不合法)。添加了 %d 个额外列名%s\n" -#: fread.c:1916 +#: 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 " @@ -2377,17 +2427,17 @@ msgstr "" "作为第一列,并被用于猜测行名或索引。若上述猜测不正确,可在后续使用setnames()" "进行修改,或修复用于生成该文件的文件写入命令以生成有效的文件。" -#: fread.c:1916 +#: fread.c:1971 msgid "s at the end." msgstr "到结尾处" -#: fread.c:1918 +#: fread.c:1973 msgid "" "Internal error: fill=true but there is a previous row which should already " "have been filled." msgstr "内部错误:参数fill=true,但是在此之前有一行应当已经被填充。" -#: fread.c:1919 +#: fread.c:1974 #, c-format msgid "" "Detected %d column names but the data has %d columns. Filling rows " @@ -2396,74 +2446,74 @@ msgstr "" "检测到%d个列名,但数据共有%d列。已经自动填充。设置参数fill=TRUE以屏蔽此警" "告。\n" -#: fread.c:1923 +#: fread.c:1978 #, c-format msgid "Failed to realloc 2 x %d bytes for type and tmpType: %s" msgstr "为 %2$s 类型重新分配 2 x %1$d bytes失败" -#: fread.c:1943 +#: 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' 被设置为%s, 因为唯一的一行包含 %s 个字段\n" -#: fread.c:1943 +#: fread.c:1998 msgid " no" msgstr "0" -#: fread.c:1946 +#: 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' 被设置为true,因为所有列类型均为字符串\n" -#: fread.c:1948 +#: 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' 被设置为false,因为部分字段的首行不为字符串\n" -#: fread.c:1964 +#: fread.c:2019 #, c-format msgid " Type codes (first row) : %s Quote rule %d\n" msgstr " 类型码(第一行) : %s 引用规则 %d\n" -#: fread.c:1973 +#: fread.c:2028 #, c-format msgid "" " All rows were sampled since file is small so we know nrow=% " "exactly\n" msgstr " 文件太小,全部行均被采样到,所以 nrow=%\n" -#: fread.c:1985 fread.c:1992 +#: fread.c:2040 fread.c:2047 msgid " =====\n" msgstr " =====\n" -#: fread.c:1986 +#: fread.c:2041 #, c-format msgid "" " Sampled % rows (handled \\n inside quoted fields) at %d jump " "points\n" msgstr " 已使用了 %2$d个跳点抽样 %1$ 行(处理了字段间的分隔符\\n)\n" -#: fread.c:1987 +#: fread.c:2042 #, c-format msgid "" " Bytes from first data row on line %d to the end of last row: %\n" msgstr " 从第一个数据行(%d)到最后一行的字节: %\n" -#: fread.c:1988 +#: fread.c:2043 #, c-format msgid " Line length: mean=%.2f sd=%.2f min=%d max=%d\n" msgstr "文件每行长度的统计量:均值=%.2f,标准差=%.2f,最小值=%d ,最大值=%d\n" -#: fread.c:1989 +#: fread.c:2044 #, c-format msgid " Estimated number of rows: % / %.2f = %\n" msgstr "估计数据共有 % / %.2f = % 行\n" -#: fread.c:1990 +#: fread.c:2045 #, c-format msgid "" " Initial alloc = % rows (% + %d%%) using bytes/" @@ -2472,44 +2522,44 @@ msgstr "" "为 % 行 (% + %d%%)分配初始内存,大小为字节数/max(mean-2*sd," "min),并确保该数值落于区间[1.1*estn, 2.0*estn]中\n" -#: fread.c:1994 +#: fread.c:2049 #, c-format msgid "Internal error: sampleLines(%) > allocnrow(%)" msgstr "内部错误:sampleLines(%) > allocnrow(%)" -#: fread.c:1998 +#: fread.c:2053 #, c-format msgid " Alloc limited to lower nrows=% passed in.\n" msgstr " 分配被限制在输入的更小的 nrows=% 值上。\n" -#: fread.c:2010 +#: fread.c:2065 msgid "[08] Assign column names\n" msgstr "[08] 指定列名\n" -#: fread.c:2018 +#: fread.c:2073 #, c-format msgid "Unable to allocate %d*%d bytes for column name pointers: %s" msgstr "无法分配 %d*%d 字节给列名指针: %s" -#: fread.c:2040 +#: fread.c:2095 #, c-format msgid "Internal error: reading colnames ending on '%c'" msgstr "内部错误:读取列名终止于 '%c'" -#: fread.c:2058 +#: fread.c:2113 msgid "[09] Apply user overrides on column types\n" msgstr "[09] 使用用户指定的列类型\n" -#: fread.c:2062 +#: fread.c:2117 msgid " Cancelled by user: userOverride() returned false." msgstr " 用户已取消:userOverride() 返回 false。" -#: fread.c:2072 +#: fread.c:2127 #, c-format msgid "Failed to allocate %d bytes for size array: %s" msgstr "无法分配 %d 字节给 size 数组:%s" -#: fread.c:2079 +#: fread.c:2134 #, c-format msgid "" "Attempt to override column %d%s%.*s%s of inherent type '%s' down to '%s' " @@ -2519,55 +2569,65 @@ msgstr "" "试图覆盖第 %d 列 %s%.*s%s,将内部类型 '%s' 降级为 '%s' 的操作被忽略。只支持将" "列类型升为更高阶的类型。如果确定此操作,请完成之后再转换类型。" -#: fread.c:2094 +#: fread.c:2149 #, c-format msgid " After %d type and %d drop user overrides : %s\n" msgstr " 经过 %d 类型和 %d 丢弃用户覆盖:%s\n" -#: fread.c:2102 +#: fread.c:2157 msgid "[10] Allocate memory for the datatable\n" msgstr "[10] 分配内存给 datatable\n" -#: fread.c:2103 +#: fread.c:2158 #, c-format msgid " Allocating %d column slots (%d - %d dropped) with % rows\n" msgstr " 正在分配 %d 列位置(%d - %d 已丢弃),% 行\n" -#: fread.c:2157 +#: fread.c:2213 #, c-format msgid "Buffer size % is too large\n" msgstr "缓冲长度 % 过大\n" -#: fread.c:2160 +#: fread.c:2216 msgid "[11] Read the data\n" msgstr "[11] 读取数据\n" -#: fread.c:2163 +#: 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:2175 +#: fread.c:2231 #, c-format msgid "Internal error: Master thread is not thread 0 but thread %d.\n" msgstr "内部错误:主线程并非线程0而是线程%d\n" -#: fread.c:2386 +#: fread.c:2444 #, c-format msgid "" "Column %d%s%.*s%s bumped from '%s' to '%s' due to <<%.*s>> on row %\n" msgstr "" -"第 %d 列 %s%.*s%s 发生了从 '%s' 到 '%s' 的类型转换,原因是由于 <<%.*s>> 出现在第 " -"% 行\n" +"第 %d 列 %s%.*s%s 发生了从 '%s' 到 '%s' 的类型转换,原因是由于 <<%.*s>> 出现" +"在第 % 行\n" -#: fread.c:2436 +#: fread.c:2494 #, c-format msgid "" "Internal error: invalid head position. jump=%d, headPos=%p, " "thisJumpStart=%p, sof=%p" msgstr "内部错误:head 位置无效。jump=%d, headPos=%p, thisJumpStart=%p, sof=%p" -#: fread.c:2509 +#: fread.c:2562 +#, c-format +msgid " Provided number of fill columns: %d but only found %d\n" +msgstr "提供的填充列数: %d 但只找到 %d\n" + +#: fread.c:2563 +#, c-format +msgid " Dropping %d overallocated columns\n" +msgstr " 删除 %d 个过度分配的列\n" + +#: fread.c:2586 #, c-format msgid "" " Too few rows allocated. Allocating additional % rows (now " @@ -2576,42 +2636,52 @@ msgstr "" " 分配的行数太少。正在分配额外的 % 行(当前 nrows=%),并从跳" "跃 %d 继续读取\n" -#: fread.c:2516 +#: fread.c:2593 #, c-format msgid " Restarting team from jump %d. nSwept==%d quoteRule==%d\n" msgstr " 从跳跃 %d 重启组。nSwept==%d quoteRule==%d\n" -#: fread.c:2536 +#: fread.c:2613 #, c-format msgid " %d out-of-sample type bumps: %s\n" msgstr " %d 样本外类型变更:%s\n" -#: fread.c:2571 +#: fread.c:2648 #, c-format msgid "" "Read % rows x %d columns from %s file in %02d:%06.3f wall clock " "time\n" msgstr "读取 % 行 x %d 列,从 %s 文件(时钟时间 %02d:%06.3f)\n" -#: fread.c:2578 +#: fread.c:2655 msgid "[12] Finalizing the datatable\n" msgstr "[12] 最后定型 datatable\n" -#: fread.c:2579 +#: fread.c:2656 msgid " Type counts:\n" msgstr " 类型数量:\n" -#: fread.c:2581 +#: fread.c:2658 #, c-format msgid "%10d : %-9s '%c'\n" msgstr "%10d : %-9s '%c'\n" -#: fread.c:2597 +#: fread.c:2674 #, c-format msgid "Discarded single-line footer: <<%s>>" msgstr "丢弃末尾行:<<%s>>" -#: fread.c:2602 +#: 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 "" +"在第 % 行提前终止。预期有 %d 个字段但只找到 %d 个。可以考虑设置 " +"fill=%d 甚至更多,基于您对输入文件的了解。 首个丢弃的非空行:<<%s>>" + +#: fread.c:2683 #, c-format msgid "" "Stopped early on line %. Expected %d fields but found %d. Consider " @@ -2620,7 +2690,7 @@ msgstr "" "在第 % 行提前终止。预期有 %d 个字段但只找到 %d 个。可以考虑设置 " "fill=TRUE 和 comment.char=。 首个丢弃的非空行:<<%s>>" -#: fread.c:2608 +#: fread.c:2690 #, c-format msgid "" "Found and resolved improper quoting out-of-sample. First healed line " @@ -2631,31 +2701,31 @@ msgstr "" "不在引号内(例如:字段间隔符没有在任何一个字段中出现),尝试用 quote=\"\" 来" "避免该警告。" -#: fread.c:2612 +#: fread.c:2694 msgid "=============================\n" msgstr "=============================\n" -#: fread.c:2614 +#: fread.c:2696 #, c-format msgid "%8.3fs (%3.0f%%) Memory map %.3fGB file\n" msgstr "%8.3fs (%3.0f%%) 内存映射 %.3fGB 文件\n" -#: fread.c:2615 +#: fread.c:2697 #, c-format msgid "%8.3fs (%3.0f%%) sep=" msgstr "%8.3fs (%3.0f%%) sep=" -#: fread.c:2617 +#: fread.c:2699 #, c-format msgid " ncol=%d and header detection\n" msgstr " ncol=%d 和表头检测\n" -#: fread.c:2618 +#: fread.c:2700 #, c-format msgid "%8.3fs (%3.0f%%) Column type detection using % sample rows\n" msgstr "%8.3fs (%3.0f%%) 列类型检测基于 % 个样本行\n" -#: fread.c:2620 +#: fread.c:2702 #, c-format msgid "" "%8.3fs (%3.0f%%) Allocation of % rows x %d cols (%.3fGB) of which " @@ -2664,7 +2734,7 @@ msgstr "" "%8.3fs (%3.0f%%) % 行 x %d 列 (%.3fGB) 的分配中已使用 % " "(%3.0f%%) 行\n" -#: fread.c:2624 +#: fread.c:2706 #, c-format msgid "" "%8.3fs (%3.0f%%) Reading %d chunks (%d swept) of %.3fMB (each chunk %d rows) " @@ -2673,29 +2743,29 @@ msgstr "" "%8.3fs (%3.0f%%) 正在读取 %d 个块 (%d 已扫描) of %.3fMB (每个块 %d 行) 使用 " "%d 个线程\n" -#: fread.c:2626 +#: 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%%) 解析到行处理线程的缓冲区(已增长 %d 次)\n" -#: fread.c:2627 +#: fread.c:2709 #, c-format msgid " + %8.3fs (%3.0f%%) Transpose\n" msgstr " + %8.3fs (%3.0f%%) 转置\n" -#: fread.c:2628 +#: fread.c:2710 #, c-format msgid " + %8.3fs (%3.0f%%) Waiting\n" msgstr " + %8.3fs (%3.0f%%) 正在等待\n" -#: fread.c:2629 +#: 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%%) 正在重读 %d 列,由于样本外类型异常\n" -#: fread.c:2631 +#: fread.c:2713 #, c-format msgid "%8.3fs Total\n" msgstr "%8.3fs 总计\n" @@ -2731,33 +2801,33 @@ msgid "" "Internal error: freadR dec not a single character. R level catches this." msgstr "内部错误:freadR dec 不是单个字符。R 中应该捕获此错误。" -#: freadR.c:113 +#: freadR.c:114 msgid "quote= must be a single character, blank \"\", or FALSE" msgstr "quote= 必须是单个字符,空白 \"\",或者 FALSE" -#: freadR.c:125 +#: freadR.c:126 msgid "Internal error: freadR nrows not a single real. R level catches this." msgstr "内部错误:freadR nrows 并非为一单一实数。R 中应该捕获此错误。" -#: freadR.c:141 +#: freadR.c:142 msgid "Internal error: skip not integer or string in freadR.c" msgstr "内部错误:freadR.c 中 skip 非整数或字符串" -#: freadR.c:144 +#: freadR.c:145 #, c-format msgid "Internal error: NAstringsArg is type '%s'. R level catches this" msgstr "内部错误:NAstringsArg是'%s'数据类型.R中能够捕获这个信息" -#: freadR.c:157 +#: freadR.c:158 #, c-format msgid "nThread(%d)<1" msgstr "nThread(%1$d)<1(线程数(%1$d)小于1)" -#: freadR.c:165 +#: freadR.c:166 msgid "'integer64' must be a single character string" msgstr "'64整数型'必须是单个字符串" -#: freadR.c:173 +#: freadR.c:174 #, c-format msgid "" "Invalid value integer64='%s'. Must be 'integer64', 'character', 'double' or " @@ -2766,11 +2836,11 @@ msgstr "" "64位整数型有效值='%s'.必须是'64位整数型','字符串','双精度浮点型'或者'数值" "型'" -#: freadR.c:181 +#: freadR.c:182 msgid "Use either select= or drop= but not both." msgstr "select=和drop=不可同时使用" -#: freadR.c:184 +#: freadR.c:185 msgid "" "select= is type list for specifying types in select=, but colClasses= has " "been provided as well. Please remove colClasses=." @@ -2778,7 +2848,7 @@ msgstr "" "select=是用于在select=中指定类型的类型列表,但是还提供了colClasses=。请删除" "colClasses=。" -#: freadR.c:186 +#: freadR.c:187 msgid "" "select= is type list but has no names; expecting list(type1=cols1, " "type2=cols2, ...)" @@ -2786,7 +2856,7 @@ msgstr "" "select =是类型列表,但没有名称; 期望列表(type1 = cols1,type2 = " "cols2,...)" -#: freadR.c:193 +#: 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=." @@ -2794,45 +2864,45 @@ msgstr "" "select =是一个命名向量,用于指定要选择的列及其类型,但是还提供了colClasses " "=。 请删除colClasses =。" -#: freadR.c:201 freadR.c:367 +#: freadR.c:202 freadR.c:368 msgid "colClasses is type list but has no names" msgstr "colClasses是类型列表,但没有名称" -#: freadR.c:211 +#: freadR.c:212 #, c-format msgid "encoding='%s' invalid. Must be 'unknown', 'Latin-1' or 'UTF-8'" msgstr "encoding ='%s'无效。 必须为'未知','Latin-1'或'UTF-8'" -#: freadR.c:234 +#: freadR.c:235 #, c-format msgid "Column name '%s' (%s) not found" msgstr "找不到列名'%s'(%s)" -#: freadR.c:236 +#: freadR.c:237 #, c-format msgid "%s is NA" msgstr "%s是缺失值" -#: freadR.c:238 +#: freadR.c:239 #, c-format msgid "%s is %d which is out of range [1,ncol=%d]" msgstr "%s是%d,超出范围[1,ncol =%d]" -#: freadR.c:252 +#: freadR.c:253 msgid "Internal error: typeSize[CT_BOOL8_N] != 1" msgstr "内部错误:类型大小[CT_BOOL8_N]不等于1" -#: freadR.c:253 +#: freadR.c:254 msgid "Internal error: typeSize[CT_STRING] != 1" msgstr "内部错误:类型大小[CT_STRING]不等于1" -#: freadR.c:287 +#: freadR.c:288 #, c-format msgid "" "Column name '%s' not found in column name header (case sensitive), skipping." msgstr "在列名标题中找不到列名'%s'(区分大小写),正在跳过。" -#: freadR.c:297 +#: freadR.c:298 #, c-format msgid "" "Column number %d (select[%d]) is negative but should be in the range [1," @@ -2840,7 +2910,7 @@ msgid "" msgstr "" "列号%d(select [%d])为负,但应在[1,ncol =%d]范围内。考虑drop=用于排除列。" -#: freadR.c:298 +#: freadR.c:299 #, c-format msgid "" "select = 0 (select[%d]) has no meaning. All values of select should be in " @@ -2848,19 +2918,19 @@ msgid "" msgstr "" "select=0(select[%d])没有意义。select的所有值都应在[1,ncol=%d]范围内。" -#: freadR.c:299 +#: freadR.c:300 #, c-format msgid "" "Column number %d (select[%d]) is too large for this table, which only has %d " "columns." msgstr "对于此表(仅包含%d列,)列号%d(select [%d])太大。" -#: freadR.c:300 +#: freadR.c:301 #, c-format msgid "Column number %d ('%s') has been selected twice by select=" msgstr "列号%d('%s')已由select =选择两次" -#: freadR.c:323 +#: freadR.c:324 #, c-format msgid "" "colClasses= is an unnamed vector of types, length %d, but there are %d " @@ -2872,11 +2942,11 @@ msgstr "" "定类型,可以使用命名向量,列表格式或使用select=而不是colClasses=。请参阅'?" "fread'中的示例。" -#: freadR.c:343 +#: freadR.c:344 msgid "Internal error: selectInts is NULL but selectColClasses is true" msgstr "内部错误:selectInts为NULL,但selectColClasses为true" -#: freadR.c:345 +#: freadR.c:346 msgid "" "Internal error: length(selectSxp)!=length(colClassesSxp) but " "selectColClasses is true" @@ -2884,22 +2954,27 @@ msgstr "" "内部错误:length(select xp)!=length(colClasses xp),但select ColClasses" "为true" -#: freadR.c:365 +#: freadR.c:366 #, c-format msgid "colClasses is type '%s' but should be list or character" msgstr "colClasses是类型'%s',但应该是列表或字符" -#: freadR.c:389 +#: freadR.c:390 #, c-format msgid "Column name '%s' (colClasses[[%d]][%d]) not found" msgstr "找不到列名'%s'(colClasses[[%d]][%d])" -#: freadR.c:391 +#: freadR.c:392 #, c-format msgid "colClasses[[%d]][%d] is NA" msgstr "colClasses[[%d]][%d]是NA" -#: freadR.c:395 +#: freadR.c:396 +#, c-format +msgid "Column number %d (colClasses[[%d]][%d]) is out of range [1,ncol=%d]" +msgstr "列号%d(colClasses[[%d]][%d])超出范围[1,ncol=%d]" + +#: freadR.c:400 #, c-format msgid "" "Column %d ('%s') appears more than once in colClasses. The second time is " @@ -2907,22 +2982,17 @@ msgid "" msgstr "" "Column %d ('%s')在colClasses中出现了多次。第二次是colClasses[[%d]][%d]." -#: freadR.c:407 -#, c-format -msgid "Column number %d (colClasses[[%d]][%d]) is out of range [1,ncol=%d]" -msgstr "列号%d(colClasses[[%d]][%d])超出范围[1,ncol=%d]" - -#: freadR.c:625 +#: freadR.c:640 #, c-format msgid "Field size is 1 but the field is of type %d\n" msgstr "字段大小为1,但字段类型为%d \n" -#: freadR.c:634 +#: freadR.c:649 #, c-format msgid "Internal error: unexpected field of size %d\n" msgstr "内部错误:大小为%d 的意外字段\n" -#: freadR.c:702 utils.c:376 +#: freadR.c:717 utils.c:387 #, c-format msgid "%s" msgstr "%s" @@ -3061,8 +3131,8 @@ msgid "" "Internal error: invalid %s argument in %s function should have been caught " "earlier. Please report to the data.table issue tracker." msgstr "" -"内部错误:函数 %s 中的 %s 参数无效,该错误理应已被捕获。请向 data.table" -"开发团队提交 issue 报告此问题。" +"内部错误:函数 %s 中的 %s 参数无效,该错误理应已被捕获。请向 data.table开发团" +"队提交 issue 报告此问题。" #: frollR.c:112 msgid "" @@ -3303,8 +3373,8 @@ msgid "" "the time data.table was compiled. To enable fwrite compression, please " "reinstall data.table and study the output for further guidance." msgstr "" -"fwrite 中的压缩功能使用了 zlib 库。并未在 data.table 编译时找到它的头文件。" -"若想启用 fwrite 的压缩功能,请重新安装 data.table 并查看输出以获得进一步的指" +"fwrite 中的压缩功能使用了 zlib 库。并未在 data.table 编译时找到它的头文件。若" +"想启用 fwrite 的压缩功能,请重新安装 data.table 并查看输出以获得进一步的指" "导。" #: fwrite.c:704 @@ -3445,14 +3515,14 @@ msgstr "列%d的长度(%d)和列1的长度(%)不一致" msgid "Column %d's type is '%s' - not yet implemented in fwrite." msgstr "列%d的类型是'%s' - 尚未在fwrite中实施" -#: fwriteR.c:267 +#: fwriteR.c:268 #, c-format msgid "" -"input has specific integer rownames but their length (%) != nrow " +"input has specific integer rownames but their length (%lld) != nrow " "(%)" -msgstr "输入具有特定的整数行名但是他们的长度(%) != nrow (%)" +msgstr "输入具有特定的整数行名但是他们的长度(%lld) != nrow (%)" -#: fwriteR.c:282 +#: fwriteR.c:283 msgid "" "No list columns are present. Setting sep2='' otherwise quote='auto' would " "quote fields containing sep2.\n" @@ -3460,7 +3530,7 @@ msgstr "" "当前没有列表页. 设置sep2=''否则quote='auto'会自动为所有包含sep2的字段加上引" "号.\n" -#: fwriteR.c:286 +#: fwriteR.c:287 #, c-format msgid "" "If quote='auto', fields will be quoted if the field contains either sep " @@ -3470,7 +3540,7 @@ msgstr "" "that host lists),所有包含sep('%1$c') 或 sep2 ('%2$c')的字段将会被自动加上引" "号。\n" -#: fwriteR.c:290 +#: fwriteR.c:291 #, c-format msgid "" "sep ('%c'), sep2 ('%c') and dec ('%c') must all be different. Column %d is a " @@ -3574,8 +3644,8 @@ 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 "" -"GForce %s 不支持类型'%s',要么添加前缀 %s,要么使用选项" -"datatable.optimize=1来关闭GForce优化。" +"GForce %s 不支持类型'%s',要么添加前缀 %s,要么使用选项datatable.optimize=1来" +"关闭GForce优化。" #: gsumm.c:584 #, c-format @@ -3593,8 +3663,8 @@ 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 "" -"类型 '%s' 不支持应用 GForce mean(gmin) 优化。你可以添加前缀 base::mean(.) 或" -"者使用 options(datatable.optimize=1) 关闭 GForce 优化" +"类型 '%s' 不支持应用 GForce mean(gmin) 优化。你可以添加前缀 base::mean(.) " +"或者使用 options(datatable.optimize=1) 关闭 GForce 优化" #: gsumm.c:724 msgid "" @@ -3603,10 +3673,10 @@ msgid "" "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 函数只能在应用在数据列上,无法应用于 .SD 或者其他对象上。为了" -"找到某个 list,如 .SD 里所有元素的最大值/最大值,请使用 base::min(.SD) 或者通过" -"设置 options(datatable.optimize=1) 来关闭 GForce 优化。更有可能的是,你真正想" -"要使用的命令是 'DT[,lapply(.SD,median),by=,.SDcols=]'" +"GForce 的 min/max 函数只能在应用在数据列上,无法应用于 .SD 或者其他对象上。为" +"了找到某个 list,如 .SD 里所有元素的最大值/最大值,请使用 base::min(.SD) 或者" +"通过设置 options(datatable.optimize=1) 来关闭 GForce 优化。更有可能的是,你真" +"正想要使用的命令是 'DT[,lapply(.SD,median),by=,.SDcols=]'" #: gsumm.c:835 msgid "Type 'complex' has no well-defined min/max" @@ -3641,8 +3711,9 @@ msgid "" "the namespace prefix (e.g. utils::head(.)) or turn off GForce optimization " "using options(datatable.optimize=1)" msgstr "" -"类型 '%s' 不支持应用 GForce head/tail/first/last/`[` 优化。你可以添加命名空间前" -"缀(如 utils::head(.))或者使用 options(datatable.optimize=1) 关闭 GForce 优化" +"类型 '%s' 不支持应用 GForce head/tail/first/last/`[` 优化。你可以添加命名空间" +"前缀(如 utils::head(.))或者使用 options(datatable.optimize=1) 关闭 GForce " +"优化" #: gsumm.c:995 gsumm.c:1001 msgid "" @@ -3720,9 +3791,8 @@ msgid "" "(e.g. data.table::shift(.)) or turn off GForce optimization using " "options(datatable.optimize=1)" msgstr "" -"类型 '%s' 不支持应用 GForce gshift 优化。你可以添加命名空间前" -"缀(如 data.table::shift(.))或者使用 options(datatable.optimize=1) 关闭 GForce" -"优化" +"类型 '%s' 不支持应用 GForce gshift 优化。你可以添加命名空间前缀(如 data." +"table::shift(.))或者使用 options(datatable.optimize=1) 关闭 GForce优化" #: idatetime.c:126 vecseq.c:13 msgid "x must be an integer vector" @@ -3821,126 +3891,122 @@ msgstr "内部错误:在重叠中出现未知的mult:%d" msgid "Final step, fetching indices in overlaps ... done in %8.3f seconds\n" msgstr "重叠的最后一步:获取索引...在%8.3f秒内完成\n" -#: init.c:163 +#: init.c:165 msgid "" "Pointers are %zu bytes, greater than 8. We have not tested on any " "architecture greater than 64bit yet." msgstr "指针是%zu个字节,大于8。我们尚未在大于64位的任何体系结构上进行测试。" -#: init.c:177 +#: init.c:179 msgid "... failed. Please forward this message to maintainer('data.table')." msgstr "... 失败。请将此消息转发给 maintainer('data.table')。" -#: init.c:178 +#: init.c:180 #, c-format msgid "Checking NA_INTEGER [%d] == INT_MIN [%d] %s" msgstr "检查NA_INTEGER [%d] == INT_MIN [%d] %s" -#: init.c:179 +#: init.c:181 #, c-format msgid "Checking NA_INTEGER [%d] == NA_LOGICAL [%d] %s" msgstr "检查Checking NA_INTEGER [%d] == NA_LOGICAL [%d] %s" -#: init.c:180 init.c:181 init.c:183 init.c:186 init.c:187 init.c:188 init.c:189 -#: init.c:190 init.c:191 init.c:192 +#: 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 "检查sizeof(%s)[%zu]是否为%d %s" -#: init.c:184 +#: init.c:186 #, c-format msgid "Checking sizeof(pointer) [%zu] is 4 or 8 %s" msgstr "检查sizeof(pointer) [%zu]是否为4 或者 8 %s" -#: init.c:185 +#: init.c:187 #, c-format msgid "Checking sizeof(SEXP) [%zu] == sizeof(pointer) [%zu] %s" msgstr "检查sizeof(SEXP) [%zu] == sizeof(pointer) [%zu] %s" -#: init.c:195 +#: init.c:197 #, c-format msgid "Checking LENGTH(allocVector(INTSXP,2)) [%d] is 2 %s" msgstr "检查LENGTH(allocVector(INTSXP,2)) [%d]是否为2 %s" -#: init.c:197 +#: init.c:199 #, c-format msgid "Checking TRUELENGTH(allocVector(INTSXP,2)) [%lld] is 0 %s" msgstr "检查TRUELENGTH(allocVector(INTSXP,2)) [%lld]是否为0 %s" -#: init.c:204 +#: init.c:206 #, c-format msgid "Checking memset(&i,0,sizeof(int)); i == (int)0 %s" msgstr "检查memset(&i,0,sizeof(int)); i == (int)0 %s" -#: init.c:207 +#: init.c:209 #, c-format msgid "Checking memset(&ui, 0, sizeof(unsigned int)); ui == (unsigned int)0 %s" msgstr "检查memset(&ui, 0, sizeof(unsigned int)); ui == (unsigned int)0 %s" -#: init.c:210 +#: init.c:212 #, c-format msgid "Checking memset(&d, 0, sizeof(double)); d == (double)0.0 %s" msgstr "检查memset(&d, 0, sizeof(double)); d == (double)0.0 %s" -#: init.c:213 +#: init.c:215 #, c-format msgid "Checking memset(&ld, 0, sizeof(long double)); ld == (long double)0.0 %s" msgstr "检查memset(&ld, 0, sizeof(long double)); ld == (long double)0.0 %s" -#: init.c:216 +#: init.c:218 msgid "The ascii character '/' is not just before '0'" msgstr "ASCII 字符 '/' 后一个字符并非字符 '0'" -#: init.c:217 +#: init.c:219 msgid "The C expression (uint_fast8_t)('/'-'0')<10 is true. Should be false." msgstr "C表达式 (uint_fast8_t)('/'-'0') <10 为 true. 应该是 false." -#: init.c:218 +#: init.c:220 msgid "The ascii character ':' is not just after '9'" msgstr "ascii字符':'不是在'9'后" -#: init.c:219 +#: init.c:221 msgid "The C expression (uint_fast8_t)('9'-':')<10 is true. Should be false." msgstr "C表达式(uint_fast8_t)('9'-':') < 10 为 true. 应该是 false." -#: init.c:224 +#: init.c:226 #, c-format msgid "Conversion of NA_INT64 via double failed %!=%" msgstr "double类型转化为NA_INT64失败,%!=%" -#: init.c:228 +#: init.c:230 msgid "NA_INT64_D (negative -0.0) is not == 0.0." msgstr "NA_INT64_D (negative -0.0) 不是 == 0.0." -#: init.c:229 +#: init.c:231 msgid "NA_INT64_D (negative -0.0) is not ==-0.0." msgstr "NA_INT64_D (negative -0.0) 不是 ==-0.0." -#: init.c:230 +#: init.c:232 msgid "ISNAN(NA_INT64_D) is TRUE but should not be" msgstr "ISNAN(NA_INT64_D) 不应该是TRUE" -#: init.c:231 +#: init.c:233 msgid "isnan(NA_INT64_D) is TRUE but should not be" msgstr "isnan(NA_INT64_D) 不应该是 TRUE" -#: init.c:264 +#: init.c:266 #, c-format msgid "PRINTNAME(install(\"integer64\")) has returned %s not %s" msgstr "PRINTNAME(install(\"integer64\")) 返回了 %s , 而不是 %s" -#: init.c:318 +#: init.c:320 msgid "verbose option must be length 1 non-NA logical or integer" msgstr "verbose 选项必须为一个长度为 1 的非 NA 逻辑值或整数" -#: init.c:349 +#: init.c:354 msgid ".Last.value in namespace is not a length 1 integer" msgstr "命名空间中,.Last.value 不是一个长度为 1 的整型" -#: nafill.c:103 -msgid "nan_is_na must be TRUE or FALSE" -msgstr "nan_is_na 必须是 TRUE 或者 FALSE" - #: nafill.c:110 msgid "" "'x' argument is atomic vector, in-place update is supported only for list/" @@ -4079,12 +4145,9 @@ msgid "" "name' and 'I' can be used to work out proper substitution, see ?substitute2 " "examples." msgstr "" -"尝试用 '%s' 元素替换 '%s' 类型的对象,但当替换调用参数的名称时,它必须是" -"'symbol' 类型,函数 'as.name' 和 'I' 可以用来实现适当的替换,参见 ?substitute2" - -#: rbindlist.c:8 -msgid "fill= should be TRUE or FALSE" -msgstr "fill= 应该是 TRUE 或 FALSE" +"尝试用 '%s' 元素替换 '%s' 类型的对象,但当替换调用参数的名称时,它必须" +"是'symbol' 类型,函数 'as.name' 和 'I' 可以用来实现适当的替换,参见 ?" +"substitute2" #: rbindlist.c:10 msgid "use.names= should be TRUE, FALSE, or not used (\"check\" by default)" @@ -4360,8 +4423,7 @@ msgstr "内部错误: setcolorder读取到的dt有 %d 列但是有 %d 个名字 msgid "" "shift input must not be matrix or array, consider wrapping it into data." "table() or c()" -msgstr "" -"shift 的输入不能为矩阵或数组,考虑将其放入 data.table() 或 c() 中。" +msgstr "shift 的输入不能为矩阵或数组,考虑将其放入 data.table() 或 c() 中。" #: shift.c:17 #, c-format @@ -4515,10 +4577,14 @@ msgstr "keep.names 应该是空(NULL),或者为放置输入名称的结果 msgid "fill must be a length 1 vector, such as the default NA" msgstr "fill 必须是长度为 1 的向量,例如默认值 NA" -#: transpose.c:28 +#: transpose.c:22 +msgid "list.cols should be logical TRUE/FALSE." +msgstr "list.cols 应该是逻辑类型 TRUE 或 FALSE。" + +#: transpose.c:31 #, c-format -msgid "Item %d of list input is not an atomic vector" -msgstr "列表输入的第 %d 项不是原子(atomic)向量" +msgid "Item %d of list input is not either an atomic vector, or a list" +msgstr "列表输入的第 %d 项既不是原子(atomic)向量也不是列表" #: types.c:55 msgid "internal error: status, nx, nk must be integer" @@ -4586,78 +4652,78 @@ msgstr "x不是一个逻辑向量" msgid "Unsupported type '%s' passed to allNA()" msgstr "allNA() 不支持'%s'类型" -#: utils.c:104 +#: utils.c:105 msgid "'x' argument must be data.table compatible" msgstr "'x' 必须为data.table支持的类型" -#: utils.c:122 +#: utils.c:129 msgid "" "argument specifying columns is type 'double' and one or more items in it are " "not whole integers" msgstr "指定列的参数是一个双精度类型而其中至少有一个元素不是整数" -#: utils.c:128 +#: utils.c:135 #, c-format msgid "" "argument specifying columns received non-existing column(s): cols[%d]=%d" msgstr "指定列的参数受到了不存在的列: cols[%d]=%d" -#: utils.c:133 +#: utils.c:142 msgid "'x' argument data.table has no names" msgstr "data.table的参数x并没有名字" -#: utils.c:138 +#: utils.c:148 #, c-format msgid "" "argument specifying columns received non-existing column(s): cols[%d]='%s'" msgstr "指定列的参数受到了不存在的列: cols[%d]='%s'" -#: utils.c:141 +#: utils.c:152 msgid "argument specifying columns must be character or numeric" msgstr "指定列的参数必须是字符或者是数值" -#: utils.c:144 +#: utils.c:155 msgid "argument specifying columns received duplicate column(s)" msgstr "指定列的参数受到了重复的列" -#: utils.c:229 +#: utils.c:240 #, c-format msgid "Internal error: type '%s' not supported in %s" msgstr "内部错误:类型 '%s' 不支持应用 %s" -#: utils.c:234 +#: utils.c:245 #, c-format msgid "Internal error: copyAsPlain returning ALTREP for type '%s'" msgstr "内部错误:copyAsPlain 返回了类型为 '%s' 的 ALTREP" -#: utils.c:278 +#: utils.c:289 #, c-format msgid "Found and copied %d column%s with a shared memory address\n" msgstr "发现并拷贝了具有相同的内存地址的%d列%s\n" -#: utils.c:358 +#: utils.c:369 msgid "'x' is not atomic" msgstr "x 不是一个原子向量" -#: utils.c:360 +#: utils.c:371 msgid "'x' must not be matrix or array" msgstr "'x' 不能是矩阵或者数组" -#: utils.c:362 +#: utils.c:373 msgid "input must not be matrix or array" msgstr "输入不能是矩阵或者数组" -#: utils.c:366 +#: utils.c:377 #, c-format msgid "copy=false and input already of expected type and class %s[%s]\n" msgstr "copy=false 并且输入已经是预期的类型和类 %s[%s]\n" -#: utils.c:373 +#: utils.c:384 #, c-format msgid "Coercing %s[%s] into %s[%s]\n" msgstr "强制转换 %s[%s] 为 %s[%s]\n" -#: utils.c:389 +#: utils.c:400 #, c-format msgid "zlib header files were not found when data.table was compiled" msgstr "zlib头文件在 data.table 编译时没有找到"