我一直在尝试创建一个表,该表使用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个随机数字的列吗?
答案 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()