У меня есть папка с 20 текстовыми файлами из нескольких инструментальных прогонов. Все разделы данных имеют один и тот же формат, как этот
22/05/11; 16:03:28; 0.000; 6.079; 31.41; 84881; 25.60; E0;
22/05/11; 16:03:29; 0.017; 6.063; 31.44; 84868; 25.60; E0;
22/05/11; 16:03:30; 0.034; 6.079; 31.41; 84868; 25.60; E0;
22/05/11; 16:03:31; 0.051; 6.079; 31.41; 84868; 25.60; E0;
22/05/11; 16:03:32; 0.068; 6.068; 31.43; 84868; 25.60; E0;
22/05/11; 16:03:33; 0.085; 6.068; 31.43; 84881; 25.60; E0;
22/05/11; 16:03:34; 0.102; 6.079; 31.41; 84874; 25.60; E0;
Что я хотел бы сделать, так это прочитать каждый файл в моей папке, выполнить линейную регрессию и вывести значение наклона и значение R2.
На данный момент это мой код для выполнения этого для одного файла.
O2=read.table("Coral 1_Dark.txt",skip=58, sep=";",header=FALSE)
names(O2)<-c("Date","Time","Log_Time","O2_mgL","Phase","Amp","Temp C","Error Message")
O2$id<-seq_len(nrow(O2)) #creates unique ID for each measurement (use for regression)
attach(O2)
fit=lm(O2_mgL~id)
summary(fit)
После запуска этого кода я вручную вводил наклон и данные R2.
На данный момент я могу создать переменную, которая содержит все интересующие меня файлы с
F=list.files()
Что дает мне все 20 файлов
[1] "Coral 1_Dark.txt" "Coral 1_Light.txt" "Coral 10_Dark.txt" "Coral 10_Light.txt" "Coral 2_Dark.txt"
[6] "Coral 2_Light.txt" "Coral 3_Dark.txt" "Coral 3_Light.txt" "Coral 4_Dark.txt" "Coral 4_Light.txt"
[11] "Coral 5_Dark.txt" "Coral 5_Light.txt" "Coral 6_Dark.txt" "Coral 6_Light.txt" "Coral 7_Dark.txt"
[16] "Coral 7_Light.txt" "Coral 8_Dark.txt" "Coral 8_Light.txt" "Coral 9_Dark.txt" "Coral 9_Light.txt"
И то, что я хотел бы закончить, было бы примерно так для всех 20 файлов
Coral Slope R2
Coral 1_Dark 0.23 98.3
Coral 2_Dark 0.33 99.3
1020 * ЭСТ *
Есть предложения? Я никогда не работал ни с одной из функций применения или с любым циклом, но я думаю, что это скоро изменится ...