R中的Log()和Log10()函数
R中的log()和log10()函数是数据分析(尤其是探索性数据分析)中最有用的函数。
Log是对数的缩写。
简单来说,对数就像指数。
例如,如果最终值为16,那么您将增加2的幂是多少?
如果您的答案是4,那么花点时间欣赏一下自己,您会擅长数学!
如果必须用对数来表示,则应将其写为-log2(16)=4。
对使用对数有想法吗?如果是,那么我们很好!
R中log()函数的语法
log()和log10():log函数计算自然对数(Ln),如果给定了底数,它将使用底数进行计算。
另一方面,log10()函数计算公共日志(Lg)。
log(x,base=b)
其中:
X =输入值。
基准=如果提到,对数值将以基准计算。
R中的简单log()函数
R中的log()函数将值作为输入,并返回与输出相同的对数值。
在本部分中,我们将一个简单的数字传递给log函数以了解其功能。
#Computes the logarithmic value of an input number log(2)
0.6931472
如您在上面的输出中看到的,log函数获取输入值并计算其日志值。
#Computes the logarithmic values of a decimal value log(5.2)
1.648659
您可以将所有实数与十进制数一起传递。
您还可以提及要计算的基本值。
让我们看一个简单的例子。
#Computes log value with base log(16,base=2)
4
注意:您不能将负数传递给日志功能。
如果这样做,它将返回NaN错误。
R中的简单log10()函数
像log()函数一样,log10()函数也接受数字输入并为其计算公共日志值。
让我们看看它是如何工作的。
#Computes the common log for the input value log10(5)
0.69897
如您所见,以上输出显示了输入值的通用日志。
#Computes the common log for the input values (decimal) log10(123.567)
2.091903
同样是相同的规则-请勿使用负值作为输入。
带向量的Log()和log10()函数
让我们创建一个包含多个数值的向量,然后将该向量作为输入传递给log()函数以获取对数值。
#Creates a vector with values df<-c(23,45,6.7,55,88.9,4,3.789) #Computes the log value log(df)
3.135494 3.806662 1.902108 4.007333 4.487512 1.386294 1.332102
好了,log()函数返回了输入的所有日志值。
现在,让我们尝试使用基本值。
#Creates a vector with values df<-c(23,45,6.7,55,88.9,4,3.789) #Computes the log value log(df,base=2)
4.523562 5.491853 2.744161 5.781360 6.474112 2.000000 1.921817
哇!! R是超快的,并且返回所有带有基值2的日志值。
我希望您在R中使用这些函数会更好。
#Creates a vector with values df<-c(23,45,6.7,55,88.9,4,3.789) #Computes the log value log10(df)
1.3617278 1.6532125 0.8260748 1.7403627 1.9489018 0.6020600 0.5785246
而已!您毫不费力地做到了。
带数据帧的log()和log10()函数
到现在为止–太好了。
通过使用log()和log10()函数来计算数据帧的日志值,让我们略微向前迈进。
让我们导入一个数据集并计算特定列中所有值的日志值。
#Importing the dataset datasets::airquality
空气质量数据集
这是一个"空气质量"数据集,让我们将log()函数应用于"温度"列中显示的值。
log(airquality$Temp[1:10])
4.204693 4.276666 4.304065 4.127134 4.025352 4.189655 4.174387 4.077537 4.1108744.234107
太棒了!!!您在"温度"列中获得了前10个值,并且log()函数返回了相同的日志值。
让我们使用R中的log10()函数进行相同的操作。
log10(airquality$Temp[1:10])
1.826075 1.857332 1.869232 1.792392 1.748188 1.819544 1.812913 1.770852 1.785330 1.838849
这样,您可以在R中使用log()和log10()函数来获取输入的日志值。
绘制日志值
您几乎使用R中的log()和log10()函数完成了所有操作。
现在是时候绘制结果了。
#Plots the graph using the log values new_plot<-seq(0,100,by=0.1) plot(new_plot,log(x),type = 'l',col='Red')