Получить ту же строку из столбца c итерации - PullRequest
0 голосов
/ 29 мая 2020

Как добавить столбец сложения из той же строки в итерациях c столбец

файл join-geo.csv

title,place
Battle of Lade,Miletus
Battle of Mursa Major,Pannonia
Battle of Mursa Major,Osijek

Вот мой код

df = pd.read_csv('join-geo.csv')

with open('search_geo---' + str(timestr) + '.csv', 'w', encoding='utf-8') as output:
    fieldnames = ['title','place', 'geoname']
    output_writer = csv.DictWriter(output, delimiter=',', fieldnames=fieldnames)
    output_writer.writeheader()

    for i in df.place:
        params = {'username': "xxx",
                  'name_equals': i,
                  'featureClass': ['P', 'A'],
                  'maxRows': "1"}

        e = requests.get(url, params=params)
        if e:
            pretty_json = json.loads(e.text)
        else:
            print(f"{i} is unknown")
        for item in pretty_json["geonames"]:
            output_writer.writerow({'place': item['name'], 'geoname': "https://www.geonames.org/{}".format(item['geonameId'])})

он просто напечатает что-то вроде этого

place,geoname
Miletus,https://www.geonames.org/4814762
Pannonia (Roman province),https://www.geonames.org/8181615
Osijek,https://www.geonames.org/3193935

Я хочу, чтобы он мог также распечатать столбец заголовка с той же итерацией из df.place

, и я попытался добавить это output_writer.writerow({'title': (a for a in df.title),'place': item['name'], 'geoname': "https://www.geonames.org/{}".format(item['geonameId'])}) но оказывается не по правильному пути / строке

ожидаемый результат:

title,place,geoname
Battle of Lade,Miletus,https://www.geonames.org/4814762
Battle of Mursa Major,Pannonia (Roman province),https://www.geonames.org/8181615
Battle of Mursa Major,Osijek,https://www.geonames.org/3193935
...