如何对数据集 CSV 文件执行计算?
How to perform calculations on a dataset CSV file?
所以我使用 read.csv 加载了一个 CSV 文件,如下所示:
data <- read.csv(file = 'data.csv', header=TRUE)
加载为:
label id length strength weakness
a 1 2 3 2
a 2 3 2 4
a 3 4 2 9
a 4 7 6 3
我将如何逐行对列执行一些简单的计算?
例如,我希望仅对 a(1) 而非 a(2) 或 a(3) 求和强度 + 弱点/长度,因此每个都针对各自的行进行单独计算。
如果为它添加一个新列使其更容易,那也可以,但也可以只打印值。我是 R 的新手,我尝试了一些简单的 rowSum/colSum 组合,但我似乎无法计算出两列的总和,但仅针对相应的行而不是所有 label/id立刻。
感谢任何帮助:)
您可以subset
计算所需数据:
with(subset(data, label == 'a' & id == 1), strength + weakness / length)
这将仅对 label = 'a'
和 id = 1
的行执行计算。
如果要将结果写入新列,我们可以把条件放在ifelse
。
transform(data, new_col = ifelse(label == 'a' & id == 1,
strength + weakness / length, NA))
所以我使用 read.csv 加载了一个 CSV 文件,如下所示:
data <- read.csv(file = 'data.csv', header=TRUE)
加载为:
label id length strength weakness
a 1 2 3 2
a 2 3 2 4
a 3 4 2 9
a 4 7 6 3
我将如何逐行对列执行一些简单的计算?
例如,我希望仅对 a(1) 而非 a(2) 或 a(3) 求和强度 + 弱点/长度,因此每个都针对各自的行进行单独计算。
如果为它添加一个新列使其更容易,那也可以,但也可以只打印值。我是 R 的新手,我尝试了一些简单的 rowSum/colSum 组合,但我似乎无法计算出两列的总和,但仅针对相应的行而不是所有 label/id立刻。
感谢任何帮助:)
您可以subset
计算所需数据:
with(subset(data, label == 'a' & id == 1), strength + weakness / length)
这将仅对 label = 'a'
和 id = 1
的行执行计算。
如果要将结果写入新列,我们可以把条件放在ifelse
。
transform(data, new_col = ifelse(label == 'a' & id == 1,
strength + weakness / length, NA))