繁体   English   中英

根据多个CSV文件中的行和列条件计算平均值,并删除NA数据

[英]Calculate Mean based on row and column conditions across multiple CSV files with removing NA data

我正在处理300多个csv文件中的数据。 每个csv文件中的变量列名称均相同。 我使用rbind和loop将列堆叠到一个空的数据框中。 我想计算一列的平均值,但是在执行此操作之前,我需要根据另一列中的值(1)进行子集或隔离。

例:

考虑以下称为dfABC()的数据帧

A     B     C
1     5     7
1     4     6
4     5     8
2     5     7
2     1     7
3     2     3

我需要根据列中的值缩小数据框。 假设我想根据列B缩小数据框。假设我想返回B = 5的所有行。那么我将得到以下数据框:

A     B     C
1     5     7
4     5     8
2     5     7  

然后,从这个新的数据帧(即dfABC2()),我将能够计算A列或C列的平均值。

此外,在计算平均值之前,需要删除NA值。 感谢您的帮助。 我尝试了各种方法,但是每种方法似乎都会返回某种错误消息和/或根据我应该收到的内容返回错误的数字。

您可以使用

dataframeWothoutNAs <-na.omit(df)

从数据框中删除na值。

您可以使用subset功能执行子设置。

这是一个链接,其中包含一些不同的子集示例,其中一些使用子集功能,某些使用其他方式(无双关语)

http://www.statmethods.net/management/subset.html

例如

subsetteddata <- subset(df, B == 5)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM