# 조회된 데이터를 연산

## 함수의 활용

DeepSearch 의 검색 결과를 다양하게 분석할 수 있도록 아래와 같은 함수를 지원합니다.

{% hint style="info" %}
4칙연산(+,-,\*,/), Max(), Min(), Abs(), Select(), Mean(), Top(), Bottom(), Sum(), Rank(), Sort()
{% endhint %}

### 4칙연산

DeepSearch 의 입력 쿼리는 4칙 연산 및 () 를 지원합니다. 함수와 4칙 연산, ()를 통하여 보다 복잡한 형태의 쿼리를 수행할 수 있습니다.

```
(1+1)*17/32
```

사칙연산을 이용하여 영업이익을 매출로 나누어 영업이익률을 계산할 수도 있고, 직전연도 매출 대비 2배이상 상승한 기업 리스트 등을 조회할 수 있습니다.

```
영업이익 / 매출 > 0.2 : 영업이익률이 20%를 초과하는 기업리스트를 조회합니다. 
2020 매출 > 2019 매출 * 2 : 2020년 매출이 2019년 매출대비 2배이상 상승한 기업리스트를 조회합니다.
```

### Max(), Min()

입력 쿼리 결과값의 최대값 혹은 최소값을 계산합니다.

```
Max(삼성전자 매출액 2010-2018) : 삼성전자의 2010-2018 매출액 중 최대값을 리턴합니다.
Min(LG전자 영업이익 2010-2018) : LG전자의 2010-2018 영업이익 중 최소값을 리턴합니다. 
```

4칙 연산을 함께 활용하여, 최근 삼성전자 매출액의 최대값과 최소값이 어느정도 차이가 나는지 계산해 볼 수 있습니다.

```
Max(삼성전자 매출액 2010-2018)/ Min(삼성전자 매출액 2010-2018
```

### Abs()

입력 쿼리의 결과값을 절대값으로 변환합니다.

예를 들어, 영업손실이 발생하는 기업들의 영업손실값을 절대값으로 전환하여 가져올 수 있습니다.

```
Abs(영업이익 < 0)
```

### Select()

입력 쿼리 결과값이 여러개 일때, 그 중 어떤 결과를 사용할지 지정합니다. 보통 다른 함수와 중첩해서 많이 사용됩니다.

{% hint style="info" %}
Select({입력쿼리}, {선택 순번})

Select({입력쿼리}, \[{선택순번1}, {선택순번2}, ... ,{선택순번N}])
{% endhint %}

{% hint style="info" %}
Select({입력쿼리}, {컬럼명})

Select({입력쿼리}, \[{컬럼명1}, {컬럼명2}, ... , {컬럼명N}]
{% endhint %}

예를 들어, 시가총액이 1000억원 이상인 반도체 사업 기업의 매출액 정보만을 가져올 수 있습니다. 매출액 정보만을 가져오기 위하여, 순번 값에 2를 넣었습니다. ( 0: 사업 기업, 1:시가총액, 2:매출액이 되며, 입력쿼리의 쿼리 순서를 따릅니다. )

```
Select("*반도체*" 사업 기업 and 시가총액 > 100000000000 and 매출액, 2)
```

만약, 시가총액과 매출액을 조회하려면 순번값에 \[1,2]를 넣어서 조회합니다.

```
Select("*반도체*" 사업 기업 and 시가총액 > 100000000000 and 매출액, [1,2])
```

순번이아니라 직접 컬럼명을 입력할 수도 있습니다.&#x20;

```
Select("*반도체*" 사업 기업 and 시가총액 > 100000000000 and 매출액, ["시가총액", "매출액"])
```

![](/files/-McYKhqHuoKybOZrDszt)

###

### Mean()

입력 쿼리의 결과를 평균합니다.&#x20;

삼성전자의 2018년 주가 평균값은 아래와 같습니다.

```
Mean(삼성전자 2018 주가)
```

Select() 함수와 중첩하여 보다 복잡한 계산을 할 수 있습니다. 예를 들어, 반도체 관련 기업의 시가총액 평균은 다음과 같이 계산할 수 있습니다.

```
Mean(Select(반도체 관련 기업 and 시가총액, 1))
```

### Sum()

입력 쿼리 결과값의 합계를 계산합니다.

예를 들어, 비트코인 관련 기업의 매출액의 합계를 아래와 같이 계산할 수 있습니다.

```
Sum(Select(비트코인 관련 기업 and 2017 매출액, 1))
```

### Top(), Bottom()

입력 쿼리의 결과값들을 정렬하여 상위 n개, 혹은 하위 n개만 보여줍니다.

{% hint style="info" %}
Top({입력쿼리}, 개수)
{% endhint %}

{% hint style="info" %}
Bottom({입력쿼리}, 개수)
{% endhint %}

예를 들어, 시가 배당률이 가장 높은 10개의 기업을 아래와 같이 계산할 수 있습니다.

```
Top(dps/주가, 10)
```

입력 쿼리가 여러 조건으로 중첩되어 있는 경우, 그 중 어떤 결과값을 선택하여 상위 n개만 가져오기 위해서는 선택 함수를 사용하거나, 두번째 파라미터로 몇번째 결과값을 사용할지 추가하면 됩니다.

{% hint style="info" %}
Top({입력쿼리}, 개수, 몇번째 쿼리 결과를 기준으로 할 것인지 순)
{% endhint %}

예를 들어, 반도체 관련 기업 중 시가총액이 1000억원 이상인 기업에 대하여, 매출액 순위 top 10 기업을 추출하고자 한다면 다음과 같이 쿼리할 수 있습니다.

```
Top(반도체 관련 기업 and 시가총액 > 100000000000 and 매출액, 10, 2)
```

### Rank()

입력 쿼리의 결과값을 순위를 매겨서 리턴합니다.&#x20;

예를 들어, 토지 순위를 다음과 같이 입력하여 확인해 볼 수 있습니다. &#x20;

```
Rank(토지)
```

### Sort()

입력 쿼리의 결과값을 정렬하여 리턴합니다.&#x20;

```
Sort(Rank(매출액))
```

정렬 방법을 내 차순으로 바꾸기 위해서는 아래와 같이 파라미터를 추가하면 됩니다.

```
Sort(매출액 > 1000000000, ascending=False)
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.deepsearch.com/dp/api/inquiry/compute.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
