I tried toy problems and there doesn't seem to be a basic problem between lm() and ts objects:
X = data.frame(x=c(1,2,7,9), y=c(7,2,3,1)) lm(y ~ x, X) X <- lapply(X, function(x) ts(x, frequency=12, start=c(1994,7))) lm(y ~ x, X) and this works fine - whether you do an lm() before or after making ts objects, it's okay. But I have a situation where things aren't okay. I have two happy time-series objects in a data frame: > M$g.cpi.iw Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 1994 11.07 10.94 11.20 10.31 9.81 9.47 1995 9.89 9.81 9.74 9.67 10.29 10.47 11.39 10.92 10.07 10.38 10.31 9.69 ... (deleted) 2004 4.35 4.13 3.49 2.23 2.83 3.02 NA > M$g.wpi Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 1994 11.14 11.83 11.88 12.66 13.20 14.54 1995 16.18 16.88 16.88 11.02 10.94 9.70 9.61 8.94 8.92 8.47 8.24 6.62 ... (deleted) 2004 6.45 6.14 4.79 4.52 4.99 6.14 6.86 But I can't get an OLS going: > lm(g.cpi.iw ~ g.wpi, M) Error in "storage.mode<-"(`*tmp*`, value = "double") : invalid time series parameters specified Any idea why? I think both objects are quite conformable (except for an NA, but that should get dropped by lm() by default). Here's a block of R code which creates M, in case you'd like to toy with this: M = structure(list(g.wpi = structure(c(11.14, 11.83, 11.88, 12.66, 13.2, 14.54, 16.18, 16.88, 16.88, 11.02, 10.94, 9.7, 9.61, 8.94, 8.92, 8.47, 8.24, 6.62, 5.04, 4.51, 4.53, 3.67, 3.58, 3.61, 4.28, 4.9, 5.08, 4.54, 4.48, 5.25, 5.12, 5.47, 5.43, 5.86, 5.09, 5.07, 3.6, 3.26, 3.83, 4.38, 3.94, 4.01, 5.11, 4.17, 4.32, 4.57, 5.64, 6.43, 7.1, 6.56, 5.89, 6.5, 7.15, 6.32, 4.48, 5.4, 5.41, 3.98, 3.31, 2.49, 1.97, 2.79, 3.23, 3.41, 3.1, 2.79, 3.58, 3.5, 5.54, 6.56, 6.35, 6.5, 6.51, 6.12, 6.47, 7.54, 7.61, 8.31, 8.69, 8.35, 6.45, 5.42, 5.6, 5.35, 5.27, 5.38, 4.48, 2.89, 2.59, 2.26, 1.53, 1.35, 1.72, 1.5, 1.5, 2.4, 2.79, 3.35, 3.55, 3.08, 3.39, 3.31, 4.21, 5.38, 6, 6.62, 6.57, 5.39, 4.68, 3.96, 4.9, 5.15, 5.42, 5.79, 6.45, 6.14, 4.79, 4.52, 4.99, 6.14, 6.86), .Tsp = c(1994.5, 2004.5, 12), class = "ts"), g.cpi.iw = structure(c(11.07, 10.94, 11.2, 10.31, 9.81, 9.47, 9.89, 9.81, 9.74, 9.67, 10.29, 10.47, 11.39, 10.92, 10.07, 10.38, 10.31, 9.69, 9, 8.59, 8.87, 9.83, 9.33, 8.82, 8.31, 8.89, 8.52, 8.46, 8.72, 10.41, 11.11, 10.76, 10.03, 9.26, 7.32, 6.61, 5.6, 4.66, 4.94, 5.49, 4.87, 6.29, 9.71, 9.14, 8.26, 8.19, 10.51, 12.39, 14.8, 15.04, 16.34, 18.63, 19.67, 15.32, 9.38, 8.64, 8.95, 8.36, 7.71, 5.26, 3.16, 3.15, 2.14, 0.92, 0, 0.47, 2.62, 3.61, 4.83, 5.54, 5.01, 5.24, 4.95, 3.99, 3.5, 2.75, 2.74, 3.48, 3.25, 3.02, 2.53, 2.28, 2.5, 3.39, 4.04, 5.19, 4.73, 4.23, 4.89, 5.16, 4.94, 5.19, 5.17, 4.69, 4.66, 4.16, 3.89, 3.86, 4.3, 4.06, 3.6, 3.2, 3.43, 3.86, 4.06, 5.12, 4.66, 4.41, 4.16, 3.1, 2.89, 3.29, 3.07, 3.72, 4.35, 4.13, 3.49, 2.23, 2.83, 3.02, NA), .Tsp = c(1994.5, 2004.5, 12), class = "ts")), .Names = c("g.wpi", "g.cpi.iw"), row.names = c("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121"), class = "data.frame") -- Ajay Shah Consultant [EMAIL PROTECTED] Department of Economic Affairs http://www.mayin.org/ajayshah Ministry of Finance, New Delhi ______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html