Python 脚本中类似CSV的数据到数据帧

Python 脚本中类似CSV的数据到数据帧,python,pandas,ipython-notebook,Python,Pandas,Ipython Notebook,我有一个城市列表,其中包含相关的lon,lat值,我想将其转换为数据帧,但我不想从CSV文件中读取,而是希望用户修改或将这些城市,lat,lon值添加到IPython笔记本中的单元格中。现在我有一个可行的解决方案,但它似乎有点难看: import pandas as pd sta = array([ ('Boston', 42.368186, -71.047984), ('Provincetown', 42.042745, -70.171

我有一个城市列表,其中包含相关的lon,lat值,我想将其转换为数据帧,但我不想从CSV文件中读取,而是希望用户修改或将这些城市,lat,lon值添加到IPython笔记本中的单元格中。现在我有一个可行的解决方案,但它似乎有点难看:

import pandas as pd
sta =  array([
        ('Boston',          42.368186, -71.047984),
        ('Provincetown',    42.042745, -70.171180),
        ('Sandwich',        41.767990, -70.466219),
        ('Gloucester',      42.610253, -70.660570)
        ],
        dtype=[('City','|S20'), ('Lat','<f4'), ('Lon', '<f4')])

# Create a Pandas DataFrame
obs = pd.DataFrame.from_records(sta,index='City')
print(obs)
                    Lat        Lon
City                              
Boston        42.368187 -71.047981
Provincetown  42.042744 -70.171181
Sandwich      41.767990 -70.466217
Gloucester    42.610252 -70.660568
将熊猫作为pd导入
sta=阵列([
('Boston',42.368186,-71.047984),
('Provincetown',42.042745,-70.171180),
(“三明治”,41.767990,-70.466219),
('Gloucester',42.610253,-70.660570)
],

dtype=[('City','S20'),('Lat','p>您只需创建一个他们编辑的大多行字符串,然后使用
read_csv
从StringIO对象读取它:

x = """
City, Lat, Long
Boston, 42.4, -71.05
Provincetown, 42.04, -70.12
"""

>>> pandas.read_csv(StringIO.StringIO(x.strip()), sep=",\s*")
           City    Lat   Long
0        Boston  42.40 -71.05
1  Provincetown  42.04 -70.12

当然,人们仍然可能在这方面出错(例如插入逗号),但格式更简单。

您可以创建一个他们编辑的大多行字符串,然后使用
read\u csv
从StringIO对象读取:

x = """
City, Lat, Long
Boston, 42.4, -71.05
Provincetown, 42.04, -70.12
"""

>>> pandas.read_csv(StringIO.StringIO(x.strip()), sep=",\s*")
           City    Lat   Long
0        Boston  42.40 -71.05
1  Provincetown  42.04 -70.12

当然,人们仍然可以在这方面出错(例如插入逗号),但格式更简单。

“在最后一行添加结束语”:如果你指的是
Gloucester
行,那没关系。事实上,有时甚至建议这样做!酷,我不知道。谢谢你的提示!!“在最后一行添加结束语”:如果你指的是格洛斯特的那句话,那没关系。事实上,有时甚至会被推荐!酷,我不知道。谢谢你的提示!!正是我想要的。谢谢!正是我想要的。谢谢!