使用rpy2.robjectsFloatVector()创建随机的浮点数向量
import rpy2.robjects as robjects
import random
# 生成随机的浮点数列表
random_nums = [random.uniform(0, 1) for _ in range(1000)]
# 将浮点数列表转换为R中的浮点数向量
r_float_vector = robjects.FloatVector(random_nums)
# 输出R中的浮点数向量
print(r_float_vector)
# 例子完整代码如下:
import rpy2.robjects as robjects
import random
# 生成随机的浮点数列表
random_nums = [random.uniform(0, 1) for _ in range(1000)]
# 将浮点数列表转换为R中的浮点数向量
r_float_vector = robjects.FloatVector(random_nums)
# 输出R中的浮点数向量
print(r_float_vector)
# 将浮点数向量传递给R中的函数进行计算
r_sum = robjects.r.sum(r_float_vector)
r_mean = robjects.r.mean(r_float_vector)
r_min = robjects.r.min(r_float_vector)
r_max = robjects.r.max(r_float_vector)
print(f"Sum: {r_sum[0]}")
print(f"Mean: {r_mean[0]}")
print(f"Min: {r_min[0]}")
print(f"Max: {r_max[0]}")
# 输出:
# [1] 0.67907140 0.51202376 0.43949481 0.81027638 0.96154941 0.44784234 0.36950901 ...
# Sum: 520.91028256854563
# Mean: 0.5209102825685456
# Min: 0.11803253368215747
# Max: 0.9982648210079571
这个例子中,我们使用rpy2库创建了一个包含1000个随机浮点数的列表。然后,我们使用rpy2.robjects.FloatVector()函数将这个列表转换为R中的浮点数向量。
接下来,我们可以将浮点数向量传递给R中的函数进行计算。在这个例子中,我们使用R中的sum()、mean()、min()和max()函数计算了浮点数向量的和、平均值、最小值和最大值。
最后,我们使用print语句输出结果。可以看到,我们成功地将随机浮点数列表转换为R中的浮点数向量,并且得到了计算结果。
注意:在运行这个例子之前,请确保已经安装了rpy2库,并且已经配置好了R环境。
