У меня есть набор данных в Excel со следующими столбцами. Я добавляю пример данных:

Идентификатор пользователя / Очки репутации / Лингвистическая оценка

1/5/3

1/2/7

1/3/2

2/4/5

2/4/7

Каждая строка представляет ответ на вопрос о Stack Exchange. Для каждого ответа у меня есть идентификатор пользователя, количество баллов, полученных за ответ, и оценка на основе проведенного мной лингвистического анализа. Моя теория состоит в том, что сумма прошлых очков репутации влияет на текущие лингвистические оценки. Я имею в виду следующее: когда пользователь публикует ответ, сумма всех предыдущих баллов репутации, которые этот пользователь имел за предыдущие ответы, будет иметь некоторое влияние на его / ее лингвистическую оценку для этого конкретного ответа. Для того, чтобы проверить эту гипотезу. Мне нужно преобразовать данные следующим образом:

Идентификатор пользователя / Очки репутации / Лингвистическая оценка

1/0/3

1/5/7

1/7/2

2/0/5

2/4/7

В первом ответе репутация равна нулю, потому что раньше ответа не было. Во втором ответе репутация равна 5, потому что этот человек отправил только один ответ, прежде чем тот получил 5 баллов. На 3-м ответе репутация равна 7, потому что 1-й ответ получил 2 балла, а 2-й получил 5 баллов. И так для каждого пользователя.

Как бы вы посоветовали мне сделать это? У меня есть список из 100 000 ответов.

1 ответ1

1

Предполагая, что идентификатор пользователя находится в столбце A, а точки репутации - в столбце B, добавьте еще один столбец (в моем примере я буду использовать столбец D). Затем поместите следующую формулу в D2:

=IF(A2<>A1,0,D1+B1)

Скопируйте эту формулу и вставьте ее во все строки, содержащие данные.

Это будет работать только в том случае, если вы сможете убедиться, что анализируемые вами данные отсортированы по пользователю и дате (самая ранняя запись первого пользователя в первой строке, вторая самая ранняя запись первого пользователя во второй строке, ..., последнее сообщение первого пользователя в n-й строке, самый ранний пост второго пользователя в n+1-й строке, ...)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .