Просто замените pd.DataFrame(zip[*numbers])' with 'pd.DataFrame(numbers)
import pandas as pd
numbers = []
for i in range(100, 5100, 100):
numbers.append((30, i))
df = pd.DataFrame(numbers)
df.to_csv('file.csv', header=False, index=False, index_label=None)
Объяснение: DataFrame(list(zip(*[numbers])))
создаст один столбец данных с кортежами значений строк (30, 100), (30, 200), (30, 300),и т. д.
DataFrame(numbers)
создаст двухкадровый фрейм данных, где в столбце 0 будут значения 30, 30, 30 и т. д., а в столбце 1 - значения 100, 200, 300 и т. д.
Просто сделайте print(df.head(20))
, чтобы увидеть эффект.
Кстати, более питонский способ создания numbers
заключается в понимании списка:
numbers = [(30, i) for i in range(100, 5100, 100)]