我有一个命名为具有某些语义特征的示例的数据框:
> str(examples)
Classes ‘spec_tbl_df’, ‘tbl_df’, ‘tbl’ and 'data.frame': 50 obs. of 12 variables:
$ filename : chr "Text01" "Text02" "Text03" "Text04" ...
$ Control : num 1 3 0 0 0 6 0 1 0 1 ...
$ Economic : num 1 3 0 0 0 0 1 0 1 2 ...
$ ExternalVoices: num 1 2 1 1 1 2 1 4 0 1 ...
$ JobsSkills : num 0 0 0 0 0 2 0 3 0 0 ...
$ LegalStatus : num 0 3 4 0 5 0 1 0 4 0 ...
$ Modals : num 4 6 1 5 4 4 2 6 2 2 ...
$ Orign : num 2 6 8 6 3 5 3 3 2 6 ...
$ Sanctions : num 1 3 0 3 0 3 2 1 1 0 ...
$ Subjectivisms : num 2 3 4 4 3 2 1 1 2 4 ...
$ Verbs : num 3 7 3 11 6 2 7 7 4 5 ...
$ LineTotal : num 130 274 258 419 268 210 379 244 172 199 ...
- attr(*, "spec")=
.. cols(
.. filename = col_character(),
.. Control = col_double(),
.. Economic = col_double(),
.. ExternalVoices = col_double(),
.. JobsSkills = col_double(),
.. LegalStatus = col_double(),
.. Modals = col_double(),
.. Orign = col_double(),
.. Sanctions = col_double(),
.. Subjectivisms = col_double(),
.. Verbs = col_double(),
.. LineTotal = col_double()
.. )
head(examples)
A tibble: 6 x 12
filename Control Economic ExternalVoices JobsSkills LegalStatus Modals Orign Sanctions Subjectivisms Verbs LineTotal
<chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 Text01 1 1 1 0 0 4 2 1 2 3 130
2 Text02 3 3 2 0 3 6 6 3 3 7 274
3 Text03 0 0 1 0 4 1 8 0 4 3 258
4 Text04 0 0 1 0 0 5 6 3 4 11 419
5 Text05 0 0 1 0 5 4 3 0 3 6 268
6 Text06 6 0 2 2 0 4 5 3 2 2 210
我需要应用一个公式,该公式将每个单元格的值乘以1000,然后将其除以行的总数,即递归除以“ LineTotal”列:
((cellx1000)/ LineTotal
LineTotal每行更改。
我什至都没有想办法完成它。任何帮助都会很棒!
谢谢!
我认为这就是您要寻找的(examples
是您的数据框)
examples_n <- data.frame(matrix(unlist(lapply(1:ncol(examples), function(X) examples[,X]*1000/colSums(examples)[X])),nrow=NROW(examples),ncol=NCOL(examples)))