如何使用pandas为现有数据集追加含指定范围随机值的新行
数据集追加符合范围随机行的实现方案
错误原因分析
- 原有代码未加载原始数据集,直接创建了全新的DataFrame,导致历史数据全部丢失
- 仅生成了Temperature一列的随机值,未生成Humidity、Moisture两列符合要求的随机数据
- 没有执行新旧数据拼接的追加操作
可直接运行的实现代码
import numpy as np import pandas as pd # 第一步:加载原有数据集(如果原始数据是本地文件,可替换为pd.read_csv/read_excel等读取方法) original_data = [ [22, 46, 0], [36, 41.4, 170], [18, 69.3, 120], [21, 39.3, 200], [39, 70, 150], [22, 78, 220], [27, 65, 180], [32, 75, 250] ] df_original = pd.DataFrame(original_data, columns=['Temperature', 'Humidity', 'Moisture']) # 第二步:生成10行符合取值范围的随机整数 # 注意np.random.randint为左闭右开区间,所以取值上界需要+1 new_temp = np.random.randint(20, 28, size=10) new_humidity = np.random.randint(40, 56, size=10) new_moisture = np.random.randint(150, 171, size=10) # 构造新数据的DataFrame df_new = pd.DataFrame({ 'Temperature': new_temp, 'Humidity': new_humidity, 'Moisture': new_moisture }) # 第三步:拼接原有数据和新数据,ignore_index参数用于重置行号避免重复 df_final = pd.concat([df_original, df_new], ignore_index=True) # 输出最终结果 print(df_final)
关键说明
- 最终数据集会完整保留原有8行数据,末尾追加10行新数据,总数据量为18行
- 新增数据完全符合取值要求:Temperature 20-27、Humidity 40-55、Moisture 150-170
内容的提问来源于stack exchange,提问作者AL HANA T
相关产品推荐
相关产品推荐

