首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用R或Excel导入txt文件并将其转换为csv

使用R或Excel导入txt文件并将其转换为csv
EN

Stack Overflow用户
提问于 2022-06-15 15:16:53
回答 1查看 30关注 0票数 0

除了非常基本的转换之外,我很少有转换txt数据的经验,我已经尝试了大约一个小时使用Excel power查询和Tidyverse在R.

我有一个txt文件,格式如下,下面的示例显示了三个植被调查地块的数据,尽管我的实际数据超过1600块:

代码语言:javascript
运行
复制
Plot 1
CVS: class 49
ELL: No data for 2 species: Betula seedling/sp; Quercus seedling/sp
ELL: Light 5.6; Wetness 5.5; pH 3.9; Fertility 4.2
CSR: 2 species with no data: Betula seedling/sp; Pinus sylvestris
CSR: C: 2.89  S: 2.35  R: 2.33
BIO: 2 species with no data: Betula seedling/sp; Quercus seedling/sp
BIO: Eurasian Boreal-montane 14%
BIO: Eurosiberian Boreo-temperate 14%
BIO: Oceanic Temperate 14%
BIO: European Temperate 14%
BIO: Eurosiberian Temperate 14%
BIO: Circumpolar Temperate 14%
BIO: European Southern-temperate 14%

Plot 2
CVS: class 42
ELL: No data for 2 species: Betula seedling/sp; Quercus seedling/sp
ELL: Light 5.2; Wetness 5.2; pH 4.9; Fertility 5.4
CSR: 2 species with no data: Betula seedling/sp; Tilia [spp]
CSR: C: 2.36  S: 2.79  R: 2.75
BIO: 3 species with no data: Betula seedling/sp; Quercus seedling/sp; Tilia [spp]
BIO: Oceanic Temperate 25%
BIO: European Temperate 50%
BIO: Eurosiberian Temperate 25%

Plot 3
CVS: class 42
ELL: No data for 1 species: Quercus seedling/sp
ELL: Light 4.9; Wetness 5.2; pH 5.9; Fertility 5.5
CSR: C: 2.74  S: 3.25  R: 2.49
BIO: 2 species with no data: Acer pseudoplatanus; Quercus seedling/sp
BIO: Circumpolar Wide-boreal 11%
BIO: Circumpolar Boreo-temperate 11%
BIO: Eurosiberian Wide-temperate 11%
BIO: European Temperate 22%
BIO: Eurosiberian Temperate 11%
BIO: Circumpolar Temperate 11%
BIO: European Southern-temperate 22%

实际上,我不需要保存这些数据,我需要在前两行以及第5/6行(CSR)中保留和转换信息,我需要的是以下格式的表:

代码语言:javascript
运行
复制
PLOT    CVS      C      S      R
 1       49      2.89   2.35   2.33
 2       42      2.36   2.79   2.75
 3       42      2.74   3.25   2.49  

从现有的txt格式可以做到这一点吗?可悲的是,我在这个问题上毫无头绪,再多的谷歌搜索似乎也没有帮助。所有的想法都很感激。

EN

回答 1

Stack Overflow用户

发布于 2022-06-15 18:35:55

总是放在第一位置的,CVS: class nn在第二位置的和CSR: C: nn.等等,总是排在第六位的

因为在这种情况下,我想我有一些Excel公式可以帮助您获得这样的结果:

我的结果

公式如下( B6细胞中的起始蛋白):

B栏:=CLEAN(IF(ISNUMBER(SEARCH("Plot";A1));MID(A1;6;10);""))

C列:=CLEAN(ISNUMBER(搜索(“CVS: class”;A2));MID(A2;12;10);“”)

D栏:=CLEAN(ISNUMBER(搜索(“CSR: C:”;A2));MID(A6;9;5);“”)

E栏:=CLEAN(ISNUMBER(搜索(“CSR: C:”;A2));MID(A6;18;5);“”)

F栏:=CLEAN(ISNUMBER(搜索(“CSR: C:”;A2));MID(A6;27;5);“”)

正如您在图像中所看到的,当txt中少一行时,excel中的数据显示得并不完美。这就是我的第一个问题。

希望它能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72633900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档