Multiple dispatch

इंटरमीडिएट Julia

Anthony Markham

Quantitative Developer

Multiple dispatch का पुनरावलोकन

  • Multiple dispatch आपको पास किए गए आर्ग्युमेंट के टाइप के आधार पर अलग मेथड चलाने देता है.
function add_values(x, y)
    x + y
end
add_values(1, 2)  # 3
add_values("A", "B")
ERROR: MethodError: no method matching +(::String, ::String)
function add_values(x::String, y::String)
    x * y
end

add_values("A", "B")  # AB
इंटरमीडिएट Julia

Anonymous functions

  • सामान्य फंक्शनों के विपरीत, anonymous function का कोई नाम नहीं होता.
  • इन्हें जल्दी उपयोग के लिए बनाया जाता है और बाद में हटा दिया जाता है.
(x -> x^2 + 3)(2)
7
इंटरमीडिएट Julia

Complex anonymous functions

  • Anonymous functions का उपयोग केवल साधारण evaluation से आगे भी होता है.

  • map() किसी कलेक्शन के हर मान पर एक फंक्शन अप्लाई करता है.

map(x -> 2*x + x^2 + 1, [1, 2, 3])
3-element Vector{Int64}:
4 9 16
map((x, y) -> 2*x + x^2 + 1 + y, [1, 2, 3], [1, 1, 1])
3-element Vector{Int64}:
5 10 17
इंटरमीडिएट Julia

DataFrames को फ़िल्टर करना

  • filter फंक्शन का उपयोग शर्तों के साथ data structures को फ़िल्टर करने के लिए होता है.

  • हम filter के साथ anonymous function उपयोग कर सकते हैं, जो किसी खास वैल्यू पर फ़िल्टर करने में मदद करता है.

filter!("Date" => n -> n == "21/01/2022", stock_data)
 Row | Date        Open     High     Low      Close     Adj Close  Volume
     | String15    Float64  Float64  Float64  Float64?  Float64    Int64
<----|-----------------------------------------------------------------------
   1 | 21/01/2022   164.42   166.33    162.3    162.41    161.473  122848900
इंटरमीडिएट Julia

अभ्यास करते हैं!

इंटरमीडिएट Julia

Preparing Video For Download...