在pandas df中合并特定值

时间:2018-08-01 03:51:35

标签: python pandas merge

我当前正在将string中的第一个row和最后一个strings合并。这些import pandas as pd d = ({ 'A' : ['X','Foo','','X','Big'], 'B' : ['No','','','No',''], 'C' : ['Merge','Bar','','Merge','Cat'], }) df = pd.DataFrame(data = d) m = df.A == 'X' def f(x): s = x[x!= ''] x[s.index[1]] = x[s.index[1]] + ' ' + x[s.index[-1]] x[s.index[-1]] = '' return x df = df.astype(str).mask(m, df[m].apply(f, axis=1)) 位于特定值的右侧时将合并。我希望将其更改为特定值以下。

string

此代码在后接X时合并第一个 A B C 0 X No Merge 1 Foo Bar 2 3 X No Merge 4 Big Cat 和最后一个rows

输出:

X

我希望将其更改为值 A B C 0 X No Merge 1 Foo Bar 2 3 X No Merge 4 Big Cat 下的expand

预期输出:

public Mono<List<Result>> findByType(Request request) {
        return find(request)
                .expand(response -> {
                    int nextFrom = response.getFrom() + response.getSize();
                    if (nextFrom >= response.getTotalResults()) {
                        return Mono.empty();
                    }
                    return find(new Request(request.getType(), response.getFrom() + response.getSize()));
                })
                 .flatMap(response -> Flux.fromIterable(response.getResults()))
                 .collectList();;
    }

    private Mono<Response> find(Request request) {
        return webClient
                .post()
                .uri("/search")
                .contentType(MediaType.APPLICATION_JSON)
                .accept(MediaType.APPLICATION_JSON)
                .syncBody(request)
                .retrieve()
                .bodyToMono(Response.class);
    }

1 个答案:

答案 0 :(得分:0)

解决方案非常相似,仅布尔掩码被移位,并且将第一个NaN替换为 let searchBar = UISearchBar() searchBar.sizeToFit() searchBar.placeholder = "" self.navigationController?.navigationBar.topItem?.titleView = searchBar ,并且对于{{}列的有效第一个值,False的索引也更改为[1] 1}}):

[0]