我有一个熊猫DataFrames列表(称为final_list)(其中3个),每个都有3列。单个数据框看起来像这样
x y T/F
2 0 False
2 1 False
3 2 False
5 3 True
6 4 False
6 5 False
6 6 False
4 7 False
2 8 False
2 9 True
3 10 True
我想我会使用random.shuffle遍历列表并像这样随机化“ T / F”列
index = 0
while counter < len(final_list):
random.shuffle(final_list[counter]['T/F'])
counter += 1
我的目标是使每个DataFrame中的“ T / F”列随机移动,这意味着每个DataFrame中的“ T / F”列应该不同,但是在运行代码后,每个DataFrame中的“ T / F”列却不同比原始版本好,但是它们彼此相同。
答案 0 :(得分:1)
IIUC,您需要: 输入以下内容:
final_list=[df,df,df]
list_dfs=[i.assign(**{'T/F':np.random.choice(i['T/F'],len(i))}) for i in final_list]
答案 1 :(得分:0)
for df in final_list:
d['T/F'] = d['T/F'].sample(frac=1).values
x y T/F
0 2 0 False
1 2 1 True
2 3 2 False
3 5 3 True
4 6 4 True
5 6 5 False
6 6 6 False
7 4 7 False
8 2 8 False
9 2 9 False
10 3 10 False