【问题标题】:Add a vector/column of random numbers in Pandas在 Pandas 中添加一个向量/随机数列
【发布时间】:2019-04-10 23:53:20
【问题描述】:

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

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 个随机数的列?

【问题讨论】:

标签: python pandas numpy


【解决方案1】:

请检查这是否有帮助。

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()

【讨论】:

    【解决方案2】:

    只需使用函数: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)
    

    【讨论】:

      猜你喜欢
      • 2019-05-25
      • 1970-01-01
      • 2016-10-26
      • 2018-05-21
      • 1970-01-01
      • 1970-01-01
      • 2023-02-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多