因此,我尝试生成包含3列的虚拟数据:平方英尺,价格和自治区。对于前两个,这是纯粹的数字,这是好的。我有50,000行的数据都在电子表格上。然而,当我添加自治区,并指定随机值从列表中,我收到以下输出:
Sq. feet Price Borough
0 112 345382 5
1 310 901500 5
2 215 661033 5
3 147 1038431 5
4 212 296497 5
字符串
我没有使用过像 * np.random.randint * 这样与数值生成相关的软件包
使用"Borough" : random.randrange(len(word))
我哪里做错了?
下面的代码
import random
import pandas as pd
import numpy as np
WORDS = ["Chelsea", "Kensington", "Westminster", "Pimlico", "Bank", "Holborn", "Camden", "Islington", "Angel", "Battersea", "Knightsbridge", "Bermondsey", "Newham"]
word = random.choice(WORDS)
np.random.seed(1)
data3 = pd.DataFrame({"Sq. feet" : np.random.randint(low=75, high=325, size=50000),
"Price" : np.random.randint(low=200000, high=1250000, size=50000),
"Borough" : random.randrange(len(word))
})
df = pd.DataFrame(data3)
df.to_csv("/Users/thomasmcnally/PycharmProjects/real_estate_dummy_date/realestate.csv", index=False)
print(df)
型
我期望从WORDS []中得到一行随机的单词值,而返回值只是数字5。显然,为基于文本的数据创建另一个模块并将它们打印在不同的文件中是没有意义的。
1条答案
按热度按时间x8diyxa71#
我猜你想从WORDS中生成一个包含50,000个随机选择的列表-它本身可以被有效地重命名为BOROUGHS:
字符串
输出
型
除此之外.无论你在代码中有一个重复的数字,比如你的50,000,通常是一个好主意,让它成为一个变量,并在顶部声明它,然后它可以被改变,而不会给一些可怜的未来程序员带来维护噩梦,他们会到处寻找每一个出现的50,000。
如果你想了解它们,这个结构被称为 “list comprehension”:
型