Python groupby和join结果在输出中包含索引和数据类型
目标是获取如下所示的数据帧:Python groupby和join结果在输出中包含索引和数据类型,python,pandas,Python,Pandas,目标是获取如下所示的数据帧: keywords group word1 x word2 x word3 x x |word1|word2|word3 data['keywords'] = ['|%s' %i for i in data['keywords']] x = data.groupby('group')['keywords'].apply(lambda x: ''.join(str(x).split())) 将组和关键字作为数据
keywords group
word1 x
word2 x
word3 x
x |word1|word2|word3
data['keywords'] = ['|%s' %i for i in data['keywords']]
x = data.groupby('group')['keywords'].apply(lambda x: ''.join(str(x).split()))
将组和关键字作为数据帧中的字符串
并创建如下所示的数据帧:
keywords group
word1 x
word2 x
word3 x
x |word1|word2|word3
data['keywords'] = ['|%s' %i for i in data['keywords']]
x = data.groupby('group')['keywords'].apply(lambda x: ''.join(str(x).split()))
这是我当前的代码:
我尝试过使用一个函数:
def preprocessing(dataset, group, keywords):
dataset[keywords] = dataset[keywords].replace(' ', '_', regex = True)
df = dataset.groupby(group)[keywords].apply(lambda x: ','.join(str(x).split()))
df = pd.DataFrame(df)
df[keywords] = df[keywords].replace('_', ' ', regex = True)
return(df)
(此处的.replace是为了更容易通过.join块保持空格)
我试过这样做:
keywords group
word1 x
word2 x
word3 x
x |word1|word2|word3
data['keywords'] = ['|%s' %i for i in data['keywords']]
x = data.groupby('group')['keywords'].apply(lambda x: ''.join(str(x).split()))
我得到的输出有两个重要问题
df.groupby('group')['keywords'].apply(lambda x: '|'+'|'.join(x))
“很高兴它能起作用,你会考虑这个答案吗?”