在R中提取csv文件的特定观察值
我已使用read.csv导入了一个csv文件。 它给了我一个数据框,其中有1个变量的18k观测值,如下所示:在R中提取csv文件的特定观察值,r,csv,dataframe,R,Csv,Dataframe,我已使用read.csv导入了一个csv文件。 它给了我一个数据框,其中有1个变量的18k观测值,如下所示: V1 1 Energies (kJ/mol) 2 Bond Angle Proper Dih. Improper Dih. LJ-14 3 3.12912e+04 4.12307e+03 1.63677e+04 1.25619e+02 1.04394e+04 4
V1
1 Energies (kJ/mol)
2 Bond Angle Proper Dih. Improper Dih. LJ-14
3 3.12912e+04 4.12307e+03 1.63677e+04 1.25619e+02 1.04394e+04
4 Coulomb-14 LJ (SR) Coulomb (SR) Potential Pressure (bar)
5 9.21339e+04 2.82339e+05 -1.15807e+06 -7.21252e+05 -7.25781e+03
6 Step Time Lambda
7 1 1.00000 0.00000
8 Energies (kJ/mol)
9 Bond Angle Proper Dih. Improper Dih. LJ-14
10 2.71553e+04 4.11858e+03 1.63855e+04 1.22226e+02 1.03903e+04
11 Coulomb-14 LJ (SR) Coulomb (SR) Potential Pressure (bar)
12 9.20926e+04 2.65253e+05 -1.15928e+06 -7.43766e+05 -7.27887e+03
13 Step Time Lambda
14 2 2.00000 0.00000
...
我想提取向量中的势能。我尝试过grep和readLines的多种变体和功能,但都不起作用。有人知道如何解决这个问题吗?
谢谢!:) 那么这是正确答案吗(来自前fizzsics专业):
看起来您通过
read.csv()
命令传递的文件实际上不是csv文件。相反,它看起来像一个特殊格式的输出文件。我将仔细检查输入文件是否确实是逗号分隔值(csv)文件。如果不是,则可能需要将其转换。请查看维基百科关于文件的文章以了解更多信息。谢谢!我感觉到了类似的东西,但不确定。不幸的是,我只能访问备份文件。我会尝试转换它,希望它能工作!编辑:它实际上是一个csv文件…现在我很沮丧:DSo,有了这些数据,你只会对两行感兴趣,一行紧靠在“潜在”行的下面?如果你发布csv文件的前几行,可能会有帮助。我同意。。。请张贴前几行。
Lines <- readLines(textConnection("1 Energies (kJ/mol)
2 Bond Angle Proper Dih. Improper Dih. LJ-14
3 3.12912e+04 4.12307e+03 1.63677e+04 1.25619e+02 1.04394e+04
4 Coulomb-14 LJ (SR) Coulomb (SR) Potential Pressure (bar)
5 9.21339e+04 2.82339e+05 -1.15807e+06 -7.21252e+05 -7.25781e+03
6 Step Time Lambda
7 1 1.00000 0.00000
8 Energies (kJ/mol)
9 Bond Angle Proper Dih. Improper Dih. LJ-14
10 2.71553e+04 4.11858e+03 1.63855e+04 1.22226e+02 1.03903e+04
11 Coulomb-14 LJ (SR) Coulomb (SR) Potential Pressure (bar)
12 9.20926e+04 2.65253e+05 -1.15928e+06 -7.43766e+05 -7.27887e+03
13 Step Time Lambda
14 2 2.00000 0.00000"))
> grep("Potential", Lines) # identify the lines with "Potential"
[1] 4 11
> read.table(text=Lines[ grep("Potential", Lines)+1])[ , 5]
[1] -721252 -743766