按名称匹配与按R中的位置匹配

时间:2017-03-10 13:04:20

标签: r

这行代码有什么区别?

   1:Persons:-
    Id
    EntityTypeId
    Name
    Gender
    DOB
    BIO

    2:Movies:-
    Id
    Name
    Year of release
    Plot
    Poster
    Foreign Key(ProducerId)

    3:EntityType:-
    EntityTypeId
    Entity

    4:-MovieActorsMap
    Primary Key(Foreign Key(ActorId)
    Foreign Key(MovieId))

输出是一样的,但是有明确提及x的任何优点吗?

由于

1 个答案:

答案 0 :(得分:1)

人们通常不会为常用参数添加参数名称,例如mean中的x,但在删除缺失值时几乎总是引用na.rm参数。

虽然忽略参数名称会产生紧凑的代码,但这里有四个(相关的)原因,包括参数的名称而不是依赖于它们的位置。

  1. 根据需要重新排序参数。当您按名称引用参数时,您可以任意重新排序参数并仍然产生所需的结果。有时重新排序参数很有用。例如,在其中一个参数上运行循环时,您可能更喜欢将循环参数放在函数的前面。
  2. 它通常更安全/更具前瞻性。例如,如果某个用户编写的函数或包在更新中重新排序参数,并且您依赖于参数的位置,这会打破你的代码。在最好的情况下,您会收到错误。在最糟糕的情况下,函数会运行,但结果不正确。包括参数名称会大大降低遇到这两种情况的可能性。
  3. 为了获得更好的代码清晰度。如果很少使用参数,或者您希望明确未来的代码读者(包括您在2个月之后),那么添加名称可以使阅读更容易
  4. 能够跳过参数。如果您只想更改第三个参数,那么可能更喜欢按名称引用它。