尝试了很多方法来获得输出
import pandas as pd
numbers= []
for i in range(100,5100,100):
numbers.append((30,i))
df = pd.DataFrame(list(zip(*[numbers])))
df.to_csv('file.csv',header=False,index=False,index_label=None
此程序的输出:
file.csv:
"(30, 100)"
"(30, 200)"
"(30, 300)"
"(30, 400)"
"(30, 500)"
"(30, 600)"
"(30, 700)"
但我想要的实际产出
file.csv:
30,100
30,200
30,300
30,400
30,500
30,600
您需要如下更新您的函数:
如果必须映射多个容器的相似索引,则可以使用zip。你知道吗
只要替换
pd.DataFrame(zip[*numbers])' with 'pd.DataFrame(numbers)
说明:
DataFrame(list(zip(*[numbers])))
将创建一个具有行值元组(30100)、(30200)、(30300)等的一列数据帧DataFrame(numbers)
将创建一个两列数据帧,其中列0的行值为30、30、30等,列1的行值为100、200、300等只要做
print(df.head(20))
就可以看到效果。你知道吗顺便说一句,创建
numbers
的一种更为python的方法是使用列表理解:numbers = [(30, i) for i in range(100, 5100, 100)]
相关问题 更多 >
编程相关推荐