정말 간단하지 않습니다. 당신은에 있습니다
import itertools
data = row['record']['cells']['YOUR COLUMN NAME']['value']
x = itertools.count(2)
liste = []
for i, el in enumerate(data):
if data[i] == "x":
liste.append(x.next())
else:
x = itertools.count(2)
liste.append(el)
return ",".join([str(x) for x in liste])
:
1은 이러한 "X"
2로 뭔가 다른, 빈 칸을 교체 전체 데이터 세트
3 사용이 자이 썬 스크립트를 고유 레코드를 만듭니다
4 블랭크를 사용하여 중복을 지우십시오.
5 첫 번째 다중 값 셀을 분할하십시오.
다음은 위에서 설명한 작업의 스크린 캐스트입니다. 조금 파이썬을 알고있는 경우

은 또한 pandas
을 사용하여 파일을 변환 할 수 있습니다. 가장 우아한 방법은 무엇인지 모르겠지만이 스크립트는 효과가 있습니다.
import itertools
import pandas as pd
x = itertools.count(2)
def set_x():
global x
x = itertools.count(2)
set_x()
def increase(value):
if not value:
return next(x)
else:
set_x()
return value
data = pd.read_csv("your_file.csv", na_values=['nan'], keep_default_na=False)
data['column 1'] = data['column 1'].apply(lambda row: increase(row))
print(data)
data.to_csv("final_file.csv")
감사합니다. 위의 OpenRefine 옵션은 내가 원하는 것을 전적으로하지 않는 것 같습니다. 늘어나는 카운터가 아닌 값을 채우고 있다고 말할 수 있습니다. 예를 들어, 5 개의 빈 셀이있는 경우, 2,3,4,5,6이 아닌 1,2,3,1,2로 채우기를 원합니다. 나는 당신이 제안한대로 파이썬이나 R로 그렇게 할 수있다. 감사. –
@EduardGeist 첫 번째 셀 x가 2로, 두 번째 셀이 3으로, 등등으로 바뀝니다. 그리고 카운터는 귀하의 예와 마찬가지로 1이 나타날 때마다 2로 재설정됩니다. –
죄송합니다, 예! 이걸 알아 내서 고맙습니다. –