通过拆分列并选择最小值和最大值来子集dataframe
如何通过按分隔符拆分列并从各个列中选择最小值和最大值来对数据帧进行子集划分 在data.frame df1中,我想用分隔符“;”将列从2拆分为4。 从第2列中,仅选择第一个字符向量 从第3列中选择最小值,然后 从第4列中选择最大值通过拆分列并选择最小值和最大值来子集dataframe,r,R,如何通过按分隔符拆分列并从各个列中选择最小值和最大值来对数据帧进行子集划分 在data.frame df1中,我想用分隔符“;”将列从2拆分为4。 从第2列中,仅选择第一个字符向量 从第3列中选择最小值,然后 从第4列中选择最大值 df1 <- Geneid Chr Start End CPA1 chr7;chr7;chr7;chr7 60837277;6
df1 <-
Geneid Chr Start End
CPA1 chr7;chr7;chr7;chr7 60837277;60842119;60844209 60858738;60860094;60861430
GUCY2D chr17;chr17;chr17;chr17 60864066;60865166;60867516 60871561;60873263;60874538
UBC chr12;chr12;chr12;chr12 61053840;61054888;61056916 61090048;61090639;61092555
df2 <-
Geneid Chr Start End
CPA1 chr7 60837277 60861430
GUCY2D chr17 60864066 60874538
UBC cr12 61053840 61092555
df1使用sub
x <- " Geneid Chr Start End
CPA1 chr7;chr7;chr7;chr7 60837277;60842119;60844209 60858738;60860094;60861430
GUCY2D chr17;chr17;chr17;chr17 60864066;60865166;60867516 60871561;60873263;60874538
UBC chr12;chr12;chr12;chr12 61053840;61054888;61056916 61090048;61090639;61092555
"
df1 <-read.table(text=x, header=T)
data.frame(Geneid=df1$Geneid,Chr=sub(";.*", "", df1$Chr), Start=sub(";.*", "", df1$Start), End=sub(".*;", "", df1$End))
# Geneid Chr Start End
# 1 CPA1 chr7 60837277 60861430
# 2 GUCY2D chr17 60864066 60874538
# 3 UBC chr12 61053840 61092555
使用sub
x <- " Geneid Chr Start End
CPA1 chr7;chr7;chr7;chr7 60837277;60842119;60844209 60858738;60860094;60861430
GUCY2D chr17;chr17;chr17;chr17 60864066;60865166;60867516 60871561;60873263;60874538
UBC chr12;chr12;chr12;chr12 61053840;61054888;61056916 61090048;61090639;61092555
"
df1 <-read.table(text=x, header=T)
data.frame(Geneid=df1$Geneid,Chr=sub(";.*", "", df1$Chr), Start=sub(";.*", "", df1$Start), End=sub(".*;", "", df1$End))
# Geneid Chr Start End
# 1 CPA1 chr7 60837277 60861430
# 2 GUCY2D chr17 60864066 60874538
# 3 UBC chr12 61053840 61092555
使用sub
x <- " Geneid Chr Start End
CPA1 chr7;chr7;chr7;chr7 60837277;60842119;60844209 60858738;60860094;60861430
GUCY2D chr17;chr17;chr17;chr17 60864066;60865166;60867516 60871561;60873263;60874538
UBC chr12;chr12;chr12;chr12 61053840;61054888;61056916 61090048;61090639;61092555
"
df1 <-read.table(text=x, header=T)
data.frame(Geneid=df1$Geneid,Chr=sub(";.*", "", df1$Chr), Start=sub(";.*", "", df1$Start), End=sub(".*;", "", df1$End))
# Geneid Chr Start End
# 1 CPA1 chr7 60837277 60861430
# 2 GUCY2D chr17 60864066 60874538
# 3 UBC chr12 61053840 61092555
使用sub
x <- " Geneid Chr Start End
CPA1 chr7;chr7;chr7;chr7 60837277;60842119;60844209 60858738;60860094;60861430
GUCY2D chr17;chr17;chr17;chr17 60864066;60865166;60867516 60871561;60873263;60874538
UBC chr12;chr12;chr12;chr12 61053840;61054888;61056916 61090048;61090639;61092555
"
df1 <-read.table(text=x, header=T)
data.frame(Geneid=df1$Geneid,Chr=sub(";.*", "", df1$Chr), Start=sub(";.*", "", df1$Start), End=sub(".*;", "", df1$End))
# Geneid Chr Start End
# 1 CPA1 chr7 60837277 60861430
# 2 GUCY2D chr17 60864066 60874538
# 3 UBC chr12 61053840 61092555
您可以输出数据吗?您可以输出数据吗?您可以输出数据吗?您可以输出数据吗?如果开始
或结束
的值不符合顺序怎么办e、 g.sub(;*,,,“3;2;1”)
不返回最小值。另一方面,sapply(strsplit(“3;2;1”,“;”)函数(x)min(as.numeric(x))
工作正常。如果Start
或End
的值不符合顺序,该怎么办e、 g.sub(;*,,,“3;2;1”)
不返回最小值。另一方面,sapply(strsplit(“3;2;1”,“;”)函数(x)min(as.numeric(x))
工作正常。如果Start
或End
的值不符合顺序,该怎么办e、 g.sub(;*,,,“3;2;1”)
不返回最小值。另一方面,sapply(strsplit(“3;2;1”,“;”)函数(x)min(as.numeric(x))
工作正常。如果Start
或End
的值不符合顺序,该怎么办e、 g.sub(;*,,,“3;2;1”)
不返回最小值。另一方面,sapply(strsplit(“3;2;1”,“;”))函数(x)min(as.numeric(x))
工作正常。