我有一个包含100行的列,并且我想从该列中生成多个列(例如100)。这些新列应通过将第一列乘以随机值来生成。有办法使用python吗?我已经使用excel进行过尝试,但这是一项繁琐的工作,因为我必须将每一列乘以随机生成的数字(randbetween(a,b))。
答案 0 :(得分:1)
假设您有一列数字数据:
await controller.Get();
现在,让我们利用支持向量标量乘法的import numpy as np
import random
# random.randint(a,b) will choose a random integer between a and b
# this will create a column that is 96 elements long
col = [random.randint(0,500) for i in range(96)]
创建更多列:
numpy.array
现在,您可以循环遍历以添加新列
arr = np.array(col)
# our dataframe has one column in it
df = pd.DataFrame(arr, columns=['x'])
a, b = 100, 5000 # set what interval to select random numbers from
答案 1 :(得分:1)
您可以使用Numpy整形将具有随机数的列相乘
a, b = 10 ,20
df = pd.DataFrame({'col':np.random.randint(0,500, 100)})
df['col'].values * np.random.randint(a, b, 100).reshape(-1,1)
要在数据框中获得结果,
pd.DataFrame(df['col'].values * np.random.randint(a, b, 100).reshape(-1,1))