在熊猫中添加随机数的向量/列

时间:2018-11-07 14:24:14

标签: python pandas numpy

我一直在尝试创建一个表,该表使用Pandas和Numpy随机生成数据。我看过熊猫的备忘单,但仍然无法完成这项工作

import names
import pandas as pd
import random
import numpy as np

random.seed(100)
currency_numbers = random.sample(range(100000, 1000000), 100)

s = pd.Series(np.random.randn(100))
raw_data = {

    "Names":["".join(names.get_full_name()) for i in range(100)],

    "Names2":["".join(names.get_full_name()) for i in range(100)],

    "Currency":[]

}

df = pd.DataFrame(raw_data, columns=["Names", "Names2", "Currency"])

df.head()

我想在“货币”部分下创建一个包含100个随机数字的列吗?

2 个答案:

答案 0 :(得分:1)

只需使用以下功能: np.random.randint()

例如,当我称之为-> np.random.randint(1000,size = 100)

要在随机函数中选择的最大整数是999,也就是[0,1000]中的任何一个,并且数组的大小将为100。

因此,在您的情况下,

s = np.random.randint(1000,size=100)

然后将Currency设置为s,

"Currency":s

,然后得到的DataFrame应该给出一个包含100个随机数的列

仅供参考,通过此功能,您还可以设置低范围和高范围... 因此,在您的情况下,将是这样的:

s = np.random.randint(100000, 1000000,size=100)

答案 1 :(得分:0)

请检查是否有帮助。

import names
import pandas as pd
import random
import numpy as np

random.seed(100)
currency_numbers = np.random.randint(100000,1000000,size=(1,100))

s = pd.Series(np.random.randn(100))
raw_data = {

    "Names":["".join(names.get_full_name()) for i in range(100)],

    "Names2":["".join(names.get_full_name()) for i in range(100)],

    "Currency":currency_numbers[0]

}

df = pd.DataFrame(raw_data, columns=["Names", "Names2", "Currency"])

df.head()