У меня есть ряд данных, которые мне нужно отфильтровать.
DF состоит из одного цв. информации, разделенной строкой со значением NaN.
Я хотел бы объединить все строки, которые встречаются до каждого NaN в новом столбце.
Например, мои данные выглядят примерно так:
the
car
is
red
NaN
the
house
is
big
NaN
the
room
is
small
Мой желаемый результат -
B
the car is red
the house is big
the room is small
Пока что я подхожу к этой проблеме, создав функцию и применив ее к каждой строке в моем фрейме данных. Ниже приведен пример моего рабочего кода.
def joinNan(row):
newRow = []
placeholder = 'NaN'
if row is not placeholder:
newRow.append(row)
if row == placeholder:
return newRow
df['B'] = df.loc[0].apply(joinNan)
По какой-то причине первая строка моих данных используется в качестве индекса или заголовка столбца, поэтому я использую здесь «loc [0]» вместо определенного имени столбца.
Если есть более прямой способ приблизиться к этой прямой итерации в столбце, я открыт для этого предложения.
На данный момент я пытаюсь найти желаемое решение и не нашел другого подобного случая в переполнении стека или в Интернете в целом, чтобы помочь мне.