1.[ , ]搜索妙用
在R语言中,当你使用双括号
[ , ]
来索引数据框(data frame)或矩阵(matrix)时,第一个位置是用来指定行的索引或名称,第二个位置是用来指定列的索引、名称或逻辑条件。
-
第一个位置(即
,
前面的部分)用于指定你想要选择的行。你可以通过行的索引(数字)或行的名称(如果是字符型的话)来指定。 -
第二个位置(即
,
后面的部分)用于指定你想要选择的列。同样地,你可以通过列的索引、列的名称或一个逻辑向量来指定。
例
例如,假设你有一个名为df
的数据框,它包含几行和几列数据。如果你想选择第3行和第2列的数据,你可以这样做:
|---|------------|
| | df[3, 2]
|
或者,如果数据框的行有名称(比如"row1"
, "row2"
, ...),列也有名称(比如"col1"
, "col2"
, ...),你可以使用这些名称来索引:
|---|----------------------|
| | df["row3", "col2"]
|
如:
|---|--------------------------------------------------------------------|
| | tree_gini$cptable[which.min(tree_gini$cptable[,"xerror"]), "CP"]
|
which.min(tree_gini$cptable[,"xerror"])
这部分代码计算xerror
列中最小值的位置(行索引)。- 然后,这个行索引被用在外部的双括号索引中,与列名
"CP"
一起,来选择cptable
中对应行的CP
值。
所以,在这个特定的例子中,第一个位置是指定行的索引(通过which.min()
函数找到),第二个位置是指定列的名称("CP"
)。
2.()输出妙用
在R语言中,使用
()
进行输出妙用通常指的是在控制台中立即打印或显示某个对象或表达式的结果。
例
如果你有一个变量x
,并且想要立即在控制台中查看它的值,你可以简单地在它后面加上()
(尽管对于单个变量这通常不是必需的,因为直接输入变量名也会显示其值)。但是,这种用法在结合其他函数或表达式时很有用。
|---|--------------------|
| | x <- 42
|
| | (x) # 输出: [1] 42
|
R
(confusion_matrix <- confusionMatrix(prediction, factor(test$y)))
3.其它常用技巧(精简版)
names()
设置或获取对象名称
|---|--------------------------------------------------------|
| | names(df) # 获取df数据框的所有列名
|
| | names(df) <- c("new_col1", "new_col2", ...) # 设置新的列名
|
cbind()
和 rbind()
合并数据框或矩阵
|---|--------------------------------------------|
| | new_df <- cbind(df1, df2) # 按列合并df1和df2
|
| | new_df <- rbind(df1, df2) # 按行合并df1和df2
|
subset()
根据条件选择数据框的子集
|---|------------------------------------------------------------|
| | subset_df <- subset(df, col1 > 10 & col2 < 5) # 选择满足条件的行
|
with()
在数据框的上下文中执行表达式
|---|-------------------------------------------------------|
| | with(df, sum(col1 * col2)) # 计算df中col1和col2的逐元素乘积之和
|
apply()
对数据框或矩阵的行或列应用函数
|---|----------------------------------------|
| | apply(df, 1, sum) # 对df的每一行应用sum函数
|
| | apply(df, 2, mean) # 对df的每一列应用mean函数
|
++to be continued!!!++