一些创建列表的函数

R 金融入门

Lore Dirick

Manager of Data Science Curriculum at Flatiron School

用 split() 拆分

debt
  name payment
1  Dan     100
2  Dan     200
3  Dan     150
4  Rob      50
5  Rob      75
6  Rob     100
R 金融入门

用 split() 拆分

grouping <- debt$name

split_debt <- split(debt, grouping)

split_debt
$Dan
  name payment
1  Dan     100
2  Dan     200
3  Dan     150

$Rob
  name payment
4  Rob      50
5  Rob      75
6  Rob     100
R 金融入门

用 split() 拆分

split_debt$Dan
  name payment
1  Dan     100
2  Dan     200
3  Dan     150
split_debt$Dan$payment
100 200 150
unsplit(split_debt, grouping)
  name payment
1  Dan     100
2  Dan     200
3  Dan     150
4  Rob      50
5  Rob      75
6  Rob     100
R 金融入门

split() 示例

  • Dan 与 Rob 的计算不同
  • Dan 打 8 折,Rob 打 9 折
    • 按姓名拆分数据框
    • 应用折扣
    • 再次合并数据框
  • "split-apply-combine"
R 金融入门

拆分-应用-合并

split_debt <- split(debt, grouping)
grouping <- debt$name

split_debt$Dan$new_payment <- split_debt$Dan$payment * .8 split_debt$Rob$new_payment <- split_debt$Rob$payment * .9
split_debt
$Dan
  name payment new_payment
1  Dan     100          80
2  Dan     200         160
3  Dan     150         120

$Rob
  name payment new_payment
4  Rob      50        45.0
5  Rob      75        67.5
6  Rob     100        90.0
R 金融入门

拆分-应用-合并

unsplit(split_debt, grouping)
  name payment new_payment
1  Dan     100        80.0
2  Dan     200       160.0
3  Dan     150       120.0
4  Rob      50        45.0
5  Rob      75        67.5
6  Rob     100        90.0
R 金融入门

属性(Attributes)

my_matrix <- matrix(c(1,2,3,4,5,6), nrow = 2, ncol = 3)

attributes(my_matrix)
$dim
2 3
attributes(debt)
$names
"name"    "payment"

$row.names
1 2 3 4 5 6

$class
"data.frame"
R 金融入门

Passons à la pratique !

R 金融入门

Preparing Video For Download...