# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR The R Foundation
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
msgid ""
msgstr ""
"Project-Id-Version: R 3.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-24 10:54-0700\n"
"PO-Revision-Date: 2011-12-01 20:24+0200\n"
"Last-Translator: Joe <joedalton2@yahoo.dk>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Pootle 2.1.6\n"

#: Srunmed.c:63
msgid "bandwidth/span of running medians is larger than n"
msgstr "båndbredde/spænd for kørende medianer er større end n"

#: Srunmed.c:262
#, c-format
msgid "runmed(x, .., na.action=\"na.fail\"): have NAs starting at x[%ld]"
msgstr ""

#: Srunmed.c:265
msgid "runmed(): invalid 'na.action'"
msgstr ""

#: Srunmed.c:315
#, c-format
msgid "na_action logic error (%d), please report!"
msgstr ""

#: ansari.c:118
msgid "probabilities outside [0,1] in qansari()"
msgstr "sandsynligheder uden for [0,1] i qansari()"

#: approx.c:114
msgid "approx(): invalid f value"
msgstr "approx(): ugyldig f-værdi"

#: approx.c:117
msgid "approx(): invalid interpolation method"
msgstr "approx(): ugyldig interpolationsmetode"

#: approx.c:124
msgid "approx(): attempted to interpolate NA values"
msgstr "approx(): forsøgte at interpolere NA-værdier"

#: approx.c:128
msgid "approx(x,y, .., na.rm=FALSE): NA values in x are not allowed"
msgstr ""

#: arima.c:81 arima.c:192 arima.c:377 arima.c:608 optim.c:39
msgid "invalid argument type"
msgstr "ugyldig argumenttype"

#: arima.c:444 arima.c:530 pacf.c:324 pacf.c:363
msgid "can only transform 100 pars in arima0"
msgstr "kan kun transformere 100 par i arima0"

#: arima.c:1016
msgid "maximum supported lag is 350"
msgstr "maksimal understøttet forsinkelse er 350"

#: bandwidths.c:126
#, c-format
msgid "non-finite x[%d] in bandwidth calculation"
msgstr ""

#: complete_cases.c:26
#, fuzzy, c-format
msgid "invalid 'type' (%s) of argument"
msgstr "ugyldig argumenttype"

#: complete_cases.c:120
msgid "no input has determined the number of cases"
msgstr ""

#: complete_cases.c:223
msgid "not all arguments have the same length"
msgstr ""

#: cov.c:569
msgid "missing observations in cov/cor"
msgstr ""

#: cov.c:650
msgid "'x' is NULL"
msgstr ""

#: cov.c:682 cov.c:688
msgid "incompatible dimensions"
msgstr ""

#: cov.c:707 cov.c:748 cov.c:781
msgid "no complete element pairs"
msgstr ""

#: cov.c:720
msgid "invalid 'use' (computational method)"
msgstr ""

#: cov.c:723
msgid "'x' is empty"
msgstr ""

#: cov.c:817
msgid "the standard deviation is zero"
msgstr ""

#: deriv.c:158
msgid "invalid form in unary minus check"
msgstr ""

#: deriv.c:682
#, c-format
msgid "Function '%s' is not in the derivatives table"
msgstr ""

#: deriv.c:789
#, c-format
msgid "expression must not be type '%s'"
msgstr ""

#: deriv.c:792
msgid "variable must be a character string"
msgstr ""

#: deriv.c:794
msgid "only the first element is used as variable name"
msgstr ""

#: deriv.c:807
#, c-format
msgid "invalid expression in '%s'"
msgstr ""

#: deriv.c:1085 model.c:99
#, fuzzy
msgid "invalid variable names"
msgstr "ugyldig værdi for lag.max"

#: deriv.c:1094
#, fuzzy
msgid "invalid tag"
msgstr "ugyldig argumenttype"

#: distance.c:152
msgid "treating non-finite values as NA"
msgstr "behandler ikkebegrænsende værdier som NA"

#: distance.c:225
msgid "distance(): invalid p"
msgstr "distance(): ugyldig p"

#: distance.c:229
msgid "distance(): invalid distance"
msgstr "distance(): ugyldig afstand"

#: distn.c:44
msgid "NaNs produced"
msgstr ""

#: distn.c:45
msgid "Non-numeric argument to mathematical function"
msgstr ""

#: family.c:45
#, c-format
msgid "Value %g out of range (0, 1)"
msgstr "Værdi %g uden for interval (0, 1)"

#: family.c:66 family.c:80 family.c:98
#, c-format
msgid "Argument %s must be a nonempty numeric vector"
msgstr "Argument %s skal være en numerisk vektor som ikke er tom"

#: family.c:131 family.c:134
#, c-format
msgid "argument %s must be a numeric vector of length 1 or length %d"
msgstr "argument %s skal være en numerisk vektor af længde 1 eller længde %d"

#: fexact.c:273
#, c-format
msgid "integer overflow would happen in 'mult * ldkey' = %g"
msgstr ""

#: fexact.c:653
#, c-format
msgid ""
"FEXACT error 6.  LDKEY=%d is too small for this problem,\n"
"  (ii := key2[itp=%d] = %d, ldstp=%d)\n"
"Try increasing the size of the workspace and possibly 'mult'"
msgstr ""

#: fexact.c:1035
#, c-format
msgid "Bug in fexact3, it[i=%d]=%d: negative key %d (kyy=%d)\n"
msgstr ""

#: fexact.c:1064
#, c-format
msgid ""
"FEXACT error 30.  Stack length exceeded in f3xact,\n"
"  (ldst=%d, key=%d, ipn=%d, itp=%d, ist[ii=%d]=%d).\n"
"Increase workspace or consider using 'simulate.p.value=TRUE'"
msgstr ""

#: fexact.c:1399
#, c-format
msgid ""
"FEXACT error 6 (f5xact).  LDKEY=%d is too small for this problem: kval=%d.\n"
"Try increasing the size of the workspace."
msgstr ""

#: fexact.c:1412
#, c-format
msgid ""
"FEXACT error 7(%s). LDSTP=%d is too small for this problem,\n"
"  (kval=%d, itop-ldstp=%d).\n"
"Increase workspace or consider using 'simulate.p.value=TRUE'."
msgstr ""

#: fexact.c:1449
#, c-format
msgid ""
"FEXACT error 7(%s). LDSTP=%d is too small for this problem,\n"
"  (pastp=%g, ipn_0:=ipoin[itp=%d]=%d, stp[ipn_0]=%g).\n"
"Increase workspace or consider using 'simulate.p.value=TRUE'"
msgstr ""

#: fourier.c:70 fourier.c:165
msgid "non-numeric argument"
msgstr ""

#: fourier.c:88 fourier.c:106 fourier.c:179
msgid "fft factorization error"
msgstr ""

#: fourier.c:151
msgid "vector-valued (multivariate) series required"
msgstr ""

#: fourier.c:221
#, c-format
msgid ""
"nextn() found no solution < %d = INT_MAX (the maximal integer); pass '0+ n' "
"instead of 'n'"
msgstr ""

#: fourier.c:233
#, c-format
msgid "nextn<64>() found no solution < %ld = UINT64_MAX (the maximal integer)"
msgstr ""

#: fourier.c:249
msgid "no factors"
msgstr ""

#: fourier.c:250
msgid "too many factors"
msgstr ""

#: fourier.c:253
#, fuzzy
msgid "invalid factors"
msgstr "Ugyldig vmethod"

#: fourier.c:257
msgid "'n' must have typeof(.) \"integer\" or \"double\""
msgstr ""

#: fourier.c:295
#, c-format
msgid ""
"nextn() = %<PRIu64> > 2^53 may not be exactly representable in R (as \"double"
"\")"
msgstr ""

#: integrate.c:84 integrate.c:86 integrate.c:128
#, fuzzy, c-format
msgid "'%s' must be of length one"
msgstr "'m' skal være en liste"

#: ksmooth.c:69
msgid "only 2500 rows are allowed for sm.method=\"spline\""
msgstr "kun 2.500 rækker er tilladt for sm.method=\"spline\""

#: lm.c:57
msgid "'x' is not a matrix"
msgstr ""

#: lm.c:62
#, c-format
msgid "dimensions of 'x' (%d,%d) and 'y' (%d) do not match"
msgstr ""

#: lm.c:77 lm.c:81
#, c-format
msgid "NA/NaN/Inf in '%s'"
msgstr ""

#: loessc.c:242
msgid "span is too small"
msgstr "spænd er for lille"

#: loessc.c:257
#, c-format
msgid "workspace required (%.0f) is too large%s."
msgstr ""

#: loessc.c:258
msgid " probably because of setting 'se = TRUE'"
msgstr ""

#: loglin.c:371
msgid "this should not happen"
msgstr ""

#: loglin.c:373
msgid "algorithm did not converge"
msgstr ""

#: loglin.c:375
msgid "incorrect specification of 'table' or 'start'"
msgstr ""

#: lowess.c:292
msgid "'f' must be finite and > 0"
msgstr ""

#: lowess.c:295
#, fuzzy
msgid "'iter' must be finite and >= 0"
msgstr "'m' skal være en liste"

#: lowess.c:298
msgid "'delta' must be finite and > 0"
msgstr ""

#: mAR.c:470
msgid "Singular matrix in qr_solve"
msgstr "Entalsmatrix i qr_solve"

#: mAR.c:513
msgid "Singular matrix in ldet"
msgstr "Entalsmatrix i ldet"

#: mAR.c:700
msgid "Invalid vmethod"
msgstr "Ugyldig vmethod"

#: mAR.c:836
msgid "Burg's algorithm failed to find partial correlation"
msgstr "Burgs algoritme fejlede i at finde delvis korrelation"

#: model.c:97
msgid "invalid variables"
msgstr ""

#: model.c:101 model.c:106
msgid "number of variables != number of variable names"
msgstr ""

#: model.c:104
msgid "invalid extra variables"
msgstr ""

#: model.c:108
msgid "invalid extra variable names"
msgstr ""

#: model.c:129
#, c-format
msgid "overlong names in '%s'"
msgstr ""

#: model.c:156
#, fuzzy, c-format
msgid "invalid type (%s) for variable '%s'"
msgstr "ugyldig type for eval_check_store"

#: model.c:161
#, c-format
msgid "variable lengths differ (found for '%s')"
msgstr ""

#: model.c:215
msgid "invalid result from na.action"
msgstr ""

#: model.c:372 model.c:380 optim.c:227
#, fuzzy, c-format
msgid "invalid '%s' argument"
msgstr "ugyldig argumenttype"

#: model.c:391
#, fuzzy
msgid "invalid model frame"
msgstr "ugyldig værdi for lag.max"

#: model.c:393
msgid "do not know how many cases"
msgstr ""

#: model.c:417
#, c-format
msgid "variable lengths differ (found for variable %d)"
msgstr ""

#: model.c:421 model.c:428
#, fuzzy, c-format
msgid "variable %d has no levels"
msgstr "variabel '%s' er ikke numerisk"

#: model.c:540
msgid "the response appeared on the right-hand side and was dropped"
msgstr ""

#: model.c:560
#, c-format
msgid "term %d would require %.0g columns"
msgstr ""

#: model.c:564
#, c-format
msgid "matrix would require %.0g columns"
msgstr ""

#: model.c:575
#, c-format
msgid "problem with term %d in model.matrix: no columns are assigned"
msgstr ""

#: model.c:624 model.c:629 model.c:635 model.c:646 model.c:652 model.c:658
msgid "term names will be truncated"
msgstr ""

#: model.c:638
msgid "complex variables are not currently allowed in model matrices"
msgstr ""

#: model.c:662
#, c-format
msgid "variables of type '%s' are not allowed in model matrices"
msgstr ""

#: model.c:887
#, fuzzy
msgid "invalid formula in 'update'"
msgstr "ugyldig værdi for lag.max"

#: model.c:921
msgid "formula expected"
msgstr ""

#: model.c:1089
#, fuzzy
msgid "invalid term in model formula"
msgstr "ugyldig værdi for lag.max"

#: model.c:1180
#, fuzzy
msgid "invalid model formula"
msgstr "ugyldig værdi for lag.max"

#: model.c:1212 model.c:1518
#, fuzzy
msgid "invalid power in formula"
msgstr "ugyldig værdi for lag.max"

#: model.c:1261
#, fuzzy
msgid "invalid model formula in ExtractVars"
msgstr "ugyldig værdi for lag.max"

#: model.c:1629
#, c-format
msgid "duplicated name '%s' in data frame using '.'"
msgstr ""

#: model.c:1696
#, fuzzy
msgid "invalid model formula in EncodeVars"
msgstr "ugyldig værdi for lag.max"

#: model.c:1773
msgid "argument is not a valid model"
msgstr ""

#: model.c:1783
#, fuzzy
msgid "'specials' must be NULL or a character vector"
msgstr "'path' skal være en tegnvektor"

#: model.c:1794
msgid "'data' argument is of the wrong type"
msgstr ""

#: model.c:1866
#, c-format
msgid ""
"'varlist' has changed (from nvar=%d) to new %d after EncodeVars() -- should "
"no longer happen!"
msgstr ""

#: model.c:2150
msgid "'.' in formula and no 'data' argument"
msgstr ""

#: monoSpl.c:36
msgid "n must be at least two"
msgstr "n skal mindst være to"

#: monoSpl.c:69
msgid "Argument m must be numeric"
msgstr "Argument m skal være numerisk"

#: monoSpl.c:72
msgid "length(m) must be at least two"
msgstr "length(m) skal være mindst to"

#: monoSpl.c:74
msgid "Argument Sx must be numeric vector one shorter than m[]"
msgstr "Argument Sx skal være en numerisk vektor en kortere end m[]"

#: nls.c:99
msgid "'control' must be a list"
msgstr "'control' skal være en liste"

#: nls.c:101
msgid "'m' must be a list"
msgstr "'m' skal være en liste"

#: nls.c:107 nls.c:112 nls.c:117 nls.c:122 nls.c:127 nls.c:168 nls.c:173
#: nls.c:178 nls.c:183 nls.c:188 nls.c:193
#, c-format
msgid "'%s' absent"
msgstr "'%s' mangler"

#: nls.c:234
msgid "singular gradient"
msgstr "entalsgradient"

#: nls.c:255
#, c-format
msgid "step factor %g reduced below 'minFactor' of %g"
msgstr "trinfaktor %g reduceret under 'minFactor' af %g"

#: nls.c:264
#, c-format
msgid "number of iterations exceeded maximum of %d"
msgstr "antal iterationer overskred maksimum på %d"

#: nls.c:269
msgid "converged"
msgstr "begrænset"

#: nls.c:290
msgid "'theta' should be of type character"
msgstr "'theta' skal være type-tegn"

#: nls.c:292 port.c:382
msgid "use of NULL environment is defunct"
msgstr "brug af NULL-miljø er ude af drift"

#: nls.c:296
msgid "'rho' should be an environment"
msgstr "'rho' skal være et miljø"

#: nls.c:299
msgid "'dir' is not a numeric vector of the correct length"
msgstr "'dir' er ikke en numerisk vektor med korrekt længde"

#: nls.c:313 nls.c:347
msgid "Missing value or an infinity produced when evaluating the model"
msgstr "Manglende værdi eller en uendelig lavet under evaluering af modellen"

#: nls.c:321
#, c-format
msgid "variable '%s' is integer, not numeric"
msgstr "variable '%s' er et heltal, ikke numerisk"

#: nls.c:323
#, c-format
msgid "variable '%s' is not numeric"
msgstr "variabel '%s' er ikke numerisk"

#: optim.c:82 optim.c:109
msgid "non-finite value supplied by optim"
msgstr ""

#: optim.c:89
#, c-format
msgid "objective function in optim evaluates to length %d not 1"
msgstr ""

#: optim.c:116
#, c-format
msgid "gradient in optim evaluated to length %d not %d"
msgstr ""

#: optim.c:223 optim.c:429
msgid "'fn' is not a function"
msgstr ""

#: optim.c:241 optim.c:435
msgid "'parscale' is of the wrong length"
msgstr ""

#: optim.c:270
msgid "'maxit' is not an integer"
msgstr ""

#: optim.c:290
#, fuzzy
msgid "'tmax' is not a positive integer"
msgstr "'m' skal være en liste"

#: optim.c:292 optim.c:309 optim.c:334 optim.c:364 optim.c:443
msgid "'gr' is not a function"
msgstr ""

#: optim.c:315 optim.c:340 optim.c:370 optim.c:449
msgid "'ndeps' is of the wrong length"
msgstr ""

#: optim.c:400
msgid "unknown 'method'"
msgstr ""

#: optimize.c:220 optimize.c:306 optimize.c:528
msgid "NA replaced by maximum positive value"
msgstr ""

#: optimize.c:228 optimize.c:318 optimize.c:536
msgid "NA/Inf replaced by maximum positive value"
msgstr ""

#: optimize.c:237
msgid "invalid function value in 'optimize'"
msgstr ""

#: optimize.c:255 optimize.c:347 optimize.c:721
msgid "attempt to minimize non-function"
msgstr ""

#: optimize.c:262 optimize.c:269 optimize.c:278 optimize.c:352 optimize.c:357
#: optimize.c:373
#, fuzzy, c-format
msgid "invalid '%s' value"
msgstr "approx(): ugyldig f-værdi"

#: optimize.c:271 optimize.c:358
msgid "'xmin' not less than 'xmax'"
msgstr ""

#: optimize.c:315
msgid "-Inf replaced by maximally negative value"
msgstr ""

#: optimize.c:328
msgid "invalid function value in 'zeroin'"
msgstr ""

#: optimize.c:363 optimize.c:368
#, fuzzy, c-format
msgid "NA value for '%s' is not allowed"
msgstr "variabel '%s' er ikke numerisk"

#: optimize.c:378
#, fuzzy
msgid "'maxiter' must be positive"
msgstr "'m' skal være en liste"

#: optimize.c:520
msgid "non-finite value supplied by 'nlm'"
msgstr ""

#: optimize.c:555
msgid "invalid function value in 'nlm' optimizer"
msgstr ""

#: optimize.c:566 optimize.c:581
msgid "function value caching for optimization is seriously confused"
msgstr ""

#: optimize.c:596
msgid "numeric parameter expected"
msgstr ""

#: optimize.c:600
msgid "conflicting parameter lengths"
msgstr ""

#: optimize.c:604
#, fuzzy
msgid "invalid parameter length"
msgstr "ugyldig argumenttype"

#: optimize.c:614 optimize.c:621
#, fuzzy
msgid "missing value in parameter"
msgstr "manglende værdi i sidste %d observationer"

#: optimize.c:626
#, fuzzy
msgid "invalid parameter type"
msgstr "ugyldig argumenttype"

#: optimize.c:637
msgid "non-positive number of parameters in nlm"
msgstr ""

#: optimize.c:639
msgid "nlm is inefficient for 1-d problems"
msgstr ""

#: optimize.c:641
msgid "invalid gradient tolerance in nlm"
msgstr ""

#: optimize.c:643
msgid "invalid iteration limit in nlm"
msgstr ""

#: optimize.c:645
msgid "minimization function has no good digits in nlm"
msgstr ""

#: optimize.c:647
msgid "no analytic gradient to check in nlm!"
msgstr ""

#: optimize.c:649
msgid "no analytic Hessian to check in nlm!"
msgstr ""

#: optimize.c:651
msgid "probable coding error in analytic gradient"
msgstr ""

#: optimize.c:653
msgid "probable coding error in analytic Hessian"
msgstr ""

#: optimize.c:655
#, c-format
msgid ""
"*** unknown error message (msg = %d) in nlm()\n"
"*** should not happen!"
msgstr ""

#: optimize.c:666
msgid "Relative gradient close to zero.\n"
msgstr ""

#: optimize.c:667 optimize.c:671
msgid "Current iterate is probably solution.\n"
msgstr ""

#: optimize.c:670
msgid "Successive iterates within tolerance.\n"
msgstr ""

#: optimize.c:674
msgid "Last global step failed to locate a point lower than x.\n"
msgstr ""

#: optimize.c:675
msgid ""
"Either x is an approximate local minimum of the function,\n"
"the function is too non-linear for this algorithm,\n"
"or steptol is too large.\n"
msgstr ""

#: optimize.c:680
msgid "Iteration limit exceeded.  Algorithm failed.\n"
msgstr ""

#: optimize.c:683
msgid ""
"Maximum step size exceeded 5 consecutive times.\n"
"Either the function is unbounded below,\n"
"becomes asymptotic to a finite value\n"
"from above in some direction,\n"
"or stepmx is too small.\n"
msgstr ""

#: optimize.c:745 optimize.c:750 optimize.c:754 optimize.c:758 optimize.c:762
#: optimize.c:766 optimize.c:771
#, fuzzy
msgid "invalid NA value in parameter"
msgstr "ugyldig værdi for lag.max"

#: optimize.c:800
msgid "hessian supplied is of the wrong length or mode, so ignored"
msgstr ""

#: optimize.c:804
msgid "gradient supplied is of the wrong length or mode, so ignored"
msgstr ""

#: pacf.c:87
msgid "bad Starma struct"
msgstr "ugyldig Starma struct"

#: pacf.c:233
#, c-format
msgid "starma error code %d"
msgstr "fejlkode for starma %d"

#: pacf.c:293
#, c-format
msgid "forkal error code %d"
msgstr "fejlkode for forkal %d"

#: pacf.c:466
msgid "invalid value of lag.max"
msgstr "ugyldig værdi for lag.max"

#: port.c:133
#, c-format
msgid "Rf_divset: alg = %d must be 1, 2, 3, or 4"
msgstr "Rf_divsæt: alg = %d skal være 1, 2, 3 eller 4 "

#: port.c:149
msgid "port algorithms 3 or higher are not supported"
msgstr ""

#: port.c:317
#, c-format
msgid "gradient function must return a numeric vector of length %d"
msgstr "gradientfunktion skal returnere en numerisk vektor med længden %d"

#: port.c:329
#, c-format
msgid "Hessian function must return a square numeric matrix of order %d"
msgstr ""
"Hessianfunktion skal returnere en kvadratisk numerisk matrix i orden %d"

#: port.c:386
msgid "'rho' must be an environment"
msgstr "'rho' skal være et miljø"

#: port.c:388 port.c:554
msgid "'d' must be a nonempty numeric vector"
msgstr "'d' skal være en numerisk vektor som ikke er tom"

#: port.c:390
msgid "When Hessian defined must also have gradient defined"
msgstr "Når Hessian er defineret skal også en gradient være defineret"

#: port.c:393
#, c-format
msgid "environment 'rho' must contain a numeric vector '.par' of length %d"
msgstr "miljø 'rho' skal indeholde en numerisk vektor '.par' med længden %d"

#: port.c:407
msgid "'lower' and 'upper' must be numeric vectors"
msgstr "'lower' og 'upper' skal være numeriske vektorer"

#: port.c:466
msgid "'getElement' applies only to named lists"
msgstr "'getElement' gælder kun for navngivne lister"

#: port.c:487
#, c-format
msgid "%s$%s() not found"
msgstr "%s$%s() er ikke fundet"

#: port.c:500
#, c-format
msgid "'gradient' must be a numeric matrix of dimension (%d,%d)"
msgstr "'gradient' skal være en numerisk matrix med dimension (%d, %d)"

#: port.c:521
#, c-format
msgid "fcn produced mode %d, length %d - wanted mode %d, length %d"
msgstr "fcn lavede tilstand %d, længde %d - ønsket tilstand %d, længde %d"

#: port.c:534
msgid "invalid type for eval_check_store"
msgstr "ugyldig type for eval_check_store"

#: port.c:555
msgid "m must be a list"
msgstr "m skal være en liste"

#: port.c:575
msgid "'lowerb' and 'upperb' must be numeric vectors"
msgstr "'lowerb' og 'upperb' skal være numeriske vektorer"

#: rWishart.c:53
msgid "inconsistent degrees of freedom and dimension"
msgstr ""

#: rWishart.c:86
msgid "'scal' must be a square, real matrix"
msgstr ""

#: rWishart.c:98
msgid "'scal' matrix is not positive-definite"
msgstr ""

#: random.c:53 random.c:137 random.c:217 random.c:307
msgid "NAs produced"
msgstr ""

#: random.c:60 random.c:66 random.c:72 random.c:87 random.c:167 random.c:256
#: random.c:399
#, fuzzy
msgid "invalid arguments"
msgstr "ugyldig argumenttype"

#: random.c:333
msgid "NA in probability vector"
msgstr ""

#: random.c:335
msgid "negative probability"
msgstr ""

#: random.c:341
msgid "no positive probabilities"
msgstr ""

#: random.c:353
#, fuzzy
msgid "invalid first argument 'n'"
msgstr "ugyldig argumenttype"

#: random.c:355
#, fuzzy
msgid "invalid second argument 'size'"
msgstr "ugyldig argumenttype"

#: rcont.c:83
#, c-format
msgid "rcont2 [%d,%d]: exp underflow to 0; algorithm failure"
msgstr ""

#: smooth.c:107
#, c-format
msgid "invalid end-rule for running median of 3: %d"
msgstr "ugyldig end-rule for kørende median af 3: %d"

#: starma.c:364
#, c-format
msgid "missing value in last %d observations"
msgstr "manglende værdi i sidste %d observationer"

#, fuzzy
#~ msgid "'x' is a factor"
#~ msgstr "Ugyldig vmethod"

#, fuzzy
#~ msgid "'y' is a factor"
#~ msgstr "Ugyldig vmethod"

#~ msgid "allocation error in smooth(*, '3RSR')."
#~ msgstr "allokeringsfejl i smooth(*, '3RSR')."

#~ msgid "allocation error in smooth(*, '3RSS')."
#~ msgstr "allokeringsfejl i smooth(*, '3RSS')."

#~ msgid "allocation error in smooth(*, '3R')."
#~ msgstr "allokeringsfejl i smooth(*, '3R')."
