У меня есть кадр данных для поиска следующим образом:
String Length
0 A 2
1 B 4
2 C 3
3 D 2
У меня есть кадр данных для ввода следующим образом:
Input
0 A20
1 B1611
2 C001
3 D18
Я хочу получить вывод, подобный:
Output
0 C300
1 B2718
2 C421
3 A17
Где B2718
- это конкатенация B со случайным значением 2718, которое является 4-значным целым числом, а длина 4 получается из столбца поиска «Длина».
Я написал следующий код:
def random_with_N_digits(n):
range_start = 10**(n-1)
range_end = (10**n)-1
return randint(range_start, range_end)
def r_funct(lookup):
r_list = []
for index, row in lookup.iterrows():
r_int= random_with_N_digits(row.Length)
r_str=row.String+str(r_int)
r_list.append(r_str)
return r_list
out_df = r_funct(lookup)
out_df = pd.DataFrame(out_df, columns=['Output'])
out_df = out_df.sample(n=in_df.size)
print(out_df)
Но я не могу получить один и тот же выходной кадр данных (out_df) при каждом запуске.
Пожалуйста, предложите.