Есть ли способ объединить несколько столбцов с запятой - PullRequest
1 голос
/ 20 октября 2019

У меня есть фрейм данных с более чем 1 миллионом записей, и я хочу объединить два столбца в одну строку с разделителем, кто-нибудь поможет мне, как это сделать?

def chunk_results(df): 
    n =0
    for i in range(len(df)):
        data_frame = df.iloc[n:n+5]
       # code for combie
      n=n+5

My Dataframe:
 ID   Value
 1     a
 2     b
 3     c
 4     d
 5     e
 6     f 
 7     g
 8     h
 9     i
 10     j
  ........
  ........
  ........
 999,995  xxv
 999,996  xxw
 999,997  xxx
 999,998  xxy
 999,999  xxz

, и мне нужно что-то вроде этого

 ID           Value
 1,2,3,4,5     a,b,c,d,e
 6,7,8,9,10    f,g,h,i,j 
  ........
  ........
  ........
 999,995, 999,996, 999,997, 999,998, 999,999  xxv, xxw, xxx, xxy, xxz

Я передаю данные размера фрагмента уже в эту функцию chunk_results, так как эти df [значения] являются значением одного из запросов к API, поэтому я хочу отправить их как http://api.com? Значение= a, b, c, d, e , чтобы я мог публиковать несколько значений одновременно, я не хочу публиковать один запрос одновременно, когда у меня задержка в сети

1 Ответ

2 голосов
/ 20 октября 2019

groupby независимо от того, какие строки вы хотите, и просто агрегируйте их

chunksize = 5
df.astype(str).groupby(df.index // chunksize).agg(','.join)

Вывод

    ID          Value
0   1,2,3,4,5   a,b,c,d,e
1   6,7,8,9,10  f,g,h,i,j
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...