功能和循环上的列和唯一ID

哑光

那是我的数据框:

dput(fase1_M2)
structure(list(CO2 = c(1300L, 1300L, 1300L), Meso = structure(c(1L, 
1L, 1L), .Label = c("M2", "M3", "M4", "M5", "M6", "M7", "M8"), class = "factor"), 
    Days = structure(c(18L, 8L, 2L), .Label = c("T1", "T-1", 
    "T11", "T13", "T15", "T17", "T19", "T-2", "T20", "T21", "T22", 
    "T23", "T24", "T25", "T27", "T29", "T3", "T-3", "T5", "T7", 
    "T9"), class = "factor"), Day = -3:-1, Total.abundance.cell.l = c(8298255, 
    78682211, 175454990), Tot.dinoflagellate.cell.l = c(879200L, 
    1101931L, 4293575L), Tot.diatoms.cell.l = c(7243215, 77580280, 
    171161415), Tot.other.cell.l = c(175840L, 0L, 0L), Amphidinium = c(NA, 
    NA, NA), Karenia.mikimotoi = c(NA, NA, NA), Heteocapsa = c(NA, 
    NA, NA), Gymnodiales = c(879199.999999999, 1101930.66666667, 
    4293574.68013468), Peridinella = c(NA, NA, NA), Prorocentrum = c(NA_real_, 
    NA_real_, NA_real_), Gyrodinium = c(NA, NA, NA), Scripsiella = c(NA, 
    NA, NA), Protoperidinium.bipes = c(NA, NA, NA), Protoperidinium = c(NA, 
    NA, NA), Mesoporos.perforatus = c(NA_real_, NA_real_, NA_real_
    ), Ceratium.fusus = c(NA, NA, NA), Katodinium = c(NA, NA, 
    NA), Gymnodinium = c(NA, NA, NA), Ceratium.lineatum = c(NA, 
    NA, NA), Nitzschia.longissima.min50 = c(NA_real_, NA_real_, 
    NA_real_), Nitzschia.longissima.mag50 = c(NA_real_, NA_real_, 
    NA_real_), Pseudo.nitzschia.min50 = c(NA_real_, NA_real_, 
    NA_real_), Pseudo.nitzschia.mag50 = c(NA_real_, NA_real_, 
    NA_real_), Licmophora = c(488250, NA, NA), Navicula = c(NA, 
    NA, NA), Skeletonema.costatum = c(270825, NA, 2797454.54545454
    ), Guinardia = c(NA, 54950000, NA), Guinardia...20. = c(NA_real_, 
    NA_real_, NA_real_), Dactyliosolen = c(6264300, 22419600, 
    163184848.484849), Thalissiosia.constricta = c(NA, NA, NA
    ), Hemiliaulus.haukii = c(NA, NA, NA), Rhizosolenia = c(NA, 
    NA, NA), Helicotheca = c(NA, NA, NA), Chaetoceros.lorenzianus = c(NA_real_, 
    NA_real_, NA_real_), Chaetoceros.affinis = c(NA_real_, NA_real_, 
    NA_real_), Chaetoceros..10 = c(NA_real_, NA_real_, NA_real_
    ), Chaetoceros..10.1 = c(219840, 210680, 2493555.55555556
    ), Chaetoceros.decipiens = c(NA_real_, NA_real_, NA_real_
    ), Chaetoceros.Didymus = c(NA, NA, NA), Leptocylindrus = c(NA, 
    NA, 2685556.36363636), Asterionellopsis.glacialis = c(NA, 
    NA, NA), Ceratulina = c(NA, NA, NA), Corethron = c(NA, NA, 
    NA), Thalassiosira.nitzschioide = c(NA, NA, NA), Dictyocha = c(NA, 
    NA, NA), Cylindrotheca = c(NA, NA, NA), thalassiosira = c(NA, 
    NA, NA), bacteriastrum.hyalinum = c(NA, NA, NA), Eutripsiella = c(NA, 
    NA, NA), Cryptonomas = c(175840, NA, NA), Olisthodiscus = c(NA, 
    NA, NA), trasparente.quadrato = c(NA, NA, NA), flagellate.rotonde = c(NA, 
    NA, NA), pleurosigma = c(NA, NA, NA), amphidinium.carterae = c(NA_real_, 
    NA_real_, NA_real_), Actinoptychus.octonaria = c(NA, NA, 
    NA), pyramimonas = c(NA, NA, NA), acanthoica.aculata = c(NA, 
    NA, NA), Specie.fionda = c(NA, NA, NA), Asteroplans.Karianus = c(NA, 
    NA, NA), Chaetoceros.Lauderi = c(NA_real_, NA_real_, NA_real_
    ), Chaetoceros.curvisetus = c(NA_real_, NA_real_, NA_real_
    ), Eucampia.Zodiacus = c(NA, NA, NA), Eunotia.clevei = c(NA, 
    NA, NA), Diplopsalis = c(NA, NA, NA), ceratium = c(NA, NA, 
    NA), Raphidophyce = c(NA, NA, NA), Chaetoceros.atlanticus = c(NA, 
    NA, NA), Guinardia.delicatula = c(NA, NA, NA), Leptocylindrus.5 = c(NA_real_, 
    NA_real_, NA_real_)), .Names = c("CO2", "Meso", "Days", "Day", 
"Total.abundance.cell.l", "Tot.dinoflagellate.cell.l", "Tot.diatoms.cell.l", 
"Tot.other.cell.l", "Amphidinium", "Karenia.mikimotoi", "Heteocapsa", 
"Gymnodiales", "Peridinella", "Prorocentrum", "Gyrodinium", "Scripsiella", 
"Protoperidinium.bipes", "Protoperidinium", "Mesoporos.perforatus", 
"Ceratium.fusus", "Katodinium", "Gymnodinium", "Ceratium.lineatum", 
"Nitzschia.longissima.min50", "Nitzschia.longissima.mag50", "Pseudo.nitzschia.min50", 
"Pseudo.nitzschia.mag50", "Licmophora", "Navicula", "Skeletonema.costatum", 
"Guinardia", "Guinardia...20.", "Dactyliosolen", "Thalissiosia.constricta", 
"Hemiliaulus.haukii", "Rhizosolenia", "Helicotheca", "Chaetoceros.lorenzianus", 
"Chaetoceros.affinis", "Chaetoceros..10", "Chaetoceros..10.1", 
"Chaetoceros.decipiens", "Chaetoceros.Didymus", "Leptocylindrus", 
"Asterionellopsis.glacialis", "Ceratulina", "Corethron", "Thalassiosira.nitzschioide", 
"Dictyocha", "Cylindrotheca", "thalassiosira", "bacteriastrum.hyalinum", 
"Eutripsiella", "Cryptonomas", "Olisthodiscus", "trasparente.quadrato", 
"flagellate.rotonde", "pleurosigma", "amphidinium.carterae", 
"Actinoptychus.octonaria", "pyramimonas", "acanthoica.aculata", 
"Specie.fionda", "Asteroplans.Karianus", "Chaetoceros.Lauderi", 
"Chaetoceros.curvisetus", "Eucampia.Zodiacus", "Eunotia.clevei", 
"Diplopsalis", "ceratium", "Raphidophyce", "Chaetoceros.atlanticus", 
"Guinardia.delicatula", "Leptocylindrus.5"), row.names = c(1L, 
8L, 15L), class = "data.frame")

我想做的是应用一个函数,该函数为数据帧的每一列计算最终值logaritmo

f=function(x) {
  MIN=apply(x,2,min,na.rm=T)
  MAX=apply(x,2,max,na.rm=T)
  MIN=as.numeric(MIN)
  MAX=as.numeric(MAX)
  logaritmo=log(MAX/MIN)
  t2=which.max( x)
  t1=which.min( x )
  logaritmo/(t2-t1)
}

那么我想将此函数应用于数据框的所有列,以便logaritmo获得每一列的最终结果

我尝试使用:

apply(fase1_M2,2,f)

但这是行不通的。

感谢您的帮助

桌子

如果我正确理解,这就是您要寻找的(df是您的数据框):

library(dplyr)

lapply(df, function(x) {
    if(class(x) == "numeric") log((max(x) / min(x) ) / (max(x) - min(x)) )
    else NA
    }
    ) %>% rbind() %>% data.frame() -> tt

其中输出tt是一个数据帧,其中包含最大/最小对数除以最大和最小之间的差。对于非数字列或包含NA的,它将返回NA

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获取唯一ID和唯一值的列名

来自分类Dev

onRestoreInstanceState()和唯一视图ID

来自分类Dev

多个ID和唯一的名称

来自分类Dev

onRestoreInstanceState()和唯一视图ID

来自分类Dev

将具有非唯一ID和列值的数据框转换为每个唯一ID的单行

来自分类Dev

唯一列值的Groupby ID和转置计数

来自分类Dev

从数据框中获取唯一ID计数的数量,并为计数和值创建新列

来自分类Dev

结合功能和for循环

来自分类Dev

将数据帧分为ID列(只有一个唯一值)和变量列(有多个值)

来自分类Dev

每个用户如何在Django的同一张表上获得增量和唯一ID

来自分类Dev

每个用户如何在Django的同一张表上获得增量和唯一ID

来自分类Dev

熊猫按唯一ID和每个唯一ID的不同日期分组

来自分类Dev

熊猫按唯一ID和每个唯一ID的不同日期分组

来自分类Dev

Pandas:如何仅迭代两个 ID 列的回溯日期以提供唯一 ID 和计数?

来自分类Dev

Redis,Node.JS和唯一ID

来自分类Dev

计算每个唯一ID的过期和未过期行数

来自分类Dev

iOS idfa和android广告ID是否彼此唯一?

来自分类Dev

SAS累计计数(按唯一ID和日期)

来自分类Dev

组内和总数中的唯一ID之和

来自分类Dev

对象操作,唯一ID和组合值如何

来自分类Dev

Redis,Node.JS和唯一ID

来自分类Dev

URL逻辑:唯一的简短描述和ID

来自分类Dev

计算每个唯一ID的过期和未过期行数

来自分类Dev

如何绕过唯一ID和参考子节点

来自分类Dev

使用React和Dexie分配唯一的密钥ID?

来自分类Dev

反应唯一键-索引和ID不是唯一键

来自分类Dev

使用 dplyr 和串联生成唯一 ID 和组 ID

来自分类Dev

获取列 a 和 b 的排列唯一的所有行

来自分类Dev

列ID不是唯一的

Related 相关文章

热门标签

归档