คำถามติดแท็ก julia

Julia เป็นภาษาโปรแกรมไดนามิกระดับสูงที่มีประสิทธิภาพสูงสำหรับการคำนวณทางเทคนิค แก้ไขปัญหาสองภาษาโดยรวมความสะดวกในการใช้ภาษาเช่น R และ Python เข้ากับประสิทธิภาพของ C และ Fortran

8
เชื่อมโยง R กับ Julia?
Julia ดูมีแนวโน้มมากสำหรับการคำนวณที่รวดเร็วและมีเหตุผลทางไวยากรณ์ (เช่นที่นี่ ) แต่ฉันสงสัยว่ามันจะไม่อยู่ใกล้ R ในแง่ของเวิร์กโฟลว์สถิติโดยรวมในบางครั้ง ดังนั้นฉันต้องการใช้โดยที่ C ++ ส่วนใหญ่ใช้ในโปรแกรม R: เพื่อเพิ่มประสิทธิภาพโค้ดที่ช้า ก่อนที่ฉันจะลงทุนเวลาในการเรียนรู้ Julia ฉันอยากรู้ว่ามีสิ่งอำนวยความสะดวกอะไรบ้างสำหรับการฝังตัวอย่าง Julia ใน R code ดังนั้น: มีสิ่งอำนวยความสะดวกอะไรบ้างสำหรับการเชื่อมโยง R และ Julia พวกเขาแข็งแกร่งและมีความคิดดีเพียงใดในระดับศูนย์ถึง Rcpp? ฉันต้องการโทรหา Julia จาก R เช่นเดียวกับที่ Rcpp อนุญาตให้เรียก C ++ จากภายใน R ในตอนนี้ ฉันไม่ต้องการเรียก R จาก Julia (ดังนั้น RCall.jl จะไม่ทำงาน)
138 r  julia 

1
"สัญลักษณ์" ใน Julia คืออะไร?
โดยเฉพาะ: ฉันพยายามใช้แพ็คเกจ DataFrames ของ Julia โดยเฉพาะฟังก์ชัน readtable () ที่มีตัวเลือกชื่อ แต่ต้องใช้สัญลักษณ์เวกเตอร์ สัญลักษณ์คืออะไร? ทำไมพวกเขาถึงเลือกสิ่งนั้นบนเวกเตอร์ของสตริง? จนถึงตอนนี้ฉันพบเพียงไม่กี่รายการที่อ้างอิงถึงสัญลักษณ์คำในภาษาจูเลีย ดูเหมือนว่าสัญลักษณ์จะแสดงด้วย ": var" แต่ก็ยังไม่ชัดเจนสำหรับฉันว่ามันคืออะไร นอกเหนือ: ฉันวิ่งได้ df = readtable( "table.txt", names = [symbol("var1"), symbol("var2")] ) คำถามสองหัวข้อของฉันยังคงยืนอยู่
133 julia 

2
วิธีทำให้คำอธิบายฟังก์ชันที่ผู้ใช้กำหนดเอง (“ docstrings”) พร้อมใช้งานสำหรับ julia REPL
ฟังก์ชันที่ผู้ใช้กำหนดเอง (พูดf) จะมีงานพิมพ์ที่มีความหมายได้อย่างไรเมื่อตรวจสอบผ่าน REPL โดยใช้?fหรือhelp(f) ตัวอย่างเช่นสมมติว่าฉันเขียน funciton ต่อไปนี้ function f(x::Float64, y::Float64) return 2x - y^2 end หากฉันโหลดสิ่งนี้ลงในเซสชัน julia และลองhelp(f)รับสิ่งต่อไปนี้: julia> help(f) f (generic function with 1 method) จะเป็นอย่างไรถ้าฉันต้องการเห็นสิ่งที่ชอบ julia> help(f) f Compute 2 times x minus y squared โดยที่คำอธิบาย "คำนวณ 2 คูณ x ลบ y กำลังสอง" เขียนไว้ที่ไหนสักแห่ง ฉันคาดเดาคำตอบสำหรับคำถามของฉันได้จากคำตอบของคำถามที่ว่า "ควรเขียนคำอธิบายไว้ที่ไหน" ตัวอย่างเช่นหากฉันต้องการทำสิ่งเดียวกันใน …
91 julia 


1
อะไรคือความแตกต่างระหว่างฟิลด์และคุณสมบัติในจูเลีย?
Julia มีฟังก์ชั่น setter setproperty!และsetfield!และ getter function getpropertyและgetfieldทำงานบน structs ความแตกต่างระหว่างคุณสมบัติและเขตข้อมูลใน Julia คืออะไร? ตัวอย่างเช่นต่อไปนี้ดูเหมือนจะบ่งบอกว่าพวกเขาทำสิ่งเดียวกัน: julia> mutable struct S a end julia> s = S(2) S(2) julia> getfield(s, :a) 2 julia> getproperty(s, :a) 2 julia> setfield!(s, :a, 3) 3 julia> s S(3) julia> setproperty!(s, :a, 4) 4 julia> s S(4)
23 julia 

2
Python vs Julia autocorrelation
ฉันกำลังพยายามทำออโตคอร์เรเลชันโดยใช้ Julia และเปรียบเทียบกับผลลัพธ์ของ Python ทำไมพวกเขาถึงให้ผลลัพธ์ที่แตกต่างกัน? รหัสจูเลีย using StatsBase t = range(0, stop=10, length=10) test_data = sin.(exp.(t.^2)) acf = StatsBase.autocor(test_data) จะช่วยให้ 10-element Array{Float64,1}: 1.0 0.13254954979179642 -0.2030283419321465 0.00029587850872956104 -0.06629381497277881 0.031309038331589614 -0.16633393452504994 -0.08482388975165675 0.0006905628640697538 -0.1443650483145533 รหัสหลาม from statsmodels.tsa.stattools import acf import numpy as np t = np.linspace(0,10,10) test_data = np.sin(np.exp(t**2)) acf_result = acf(test_data) …
19 python  julia 

1
วิธีอ่านไฟล์ทีละบรรทัดใน Julia
ฉันจะเปิดไฟล์ข้อความและอ่านทีละบรรทัดได้อย่างไร มีสองกรณีที่ฉันสนใจในคำตอบสำหรับ: รับบรรทัดทั้งหมดในอาร์เรย์พร้อมกัน ประมวลผลทีละบรรทัด สำหรับกรณีที่สองฉันไม่ต้องการเก็บทุกบรรทัดไว้ในหน่วยความจำในคราวเดียว
18 file-io  julia 

2
การประกาศประเภทที่ต้องการใน Julia
มีวิธีการอย่างชัดเจนต้องในจูเลีย (เช่นบอกว่าภายในโมดูลหรือแพคเกจ) ที่ใด ๆประเภท จะต้อง ได้รับการประกาศ ? เช่นPackageCompilerหรือLint.jlมีการสนับสนุนสำหรับการตรวจสอบดังกล่าว การกระจายมาตรฐานของ Julia นั้นกว้างกว่านั้นมีตัววิเคราะห์โค้ดแบบคงที่หรือเทียบเท่าที่สามารถช่วยตรวจสอบข้อกำหนดนี้ได้หรือไม่? เป็นตัวอย่างที่สร้างแรงบันดาลใจสมมติว่าเราต้องการตรวจสอบให้แน่ใจว่าฐานรหัสการผลิตที่เพิ่มขึ้นของเรายอมรับเฉพาะรหัสที่พิมพ์อยู่เสมอภายใต้สมมติฐานที่ว่ารหัสฐานขนาดใหญ่ที่มีการประกาศประเภทมักจะบำรุงรักษาได้มากกว่า หากเราต้องการบังคับใช้เงื่อนไขนั้น Julia ในการกระจายมาตรฐานได้จัดเตรียมกลไกใด ๆ เพื่อให้มีการประกาศประเภทหรือช่วยให้บรรลุเป้าหมายนั้นหรือไม่? (เช่นมีสิ่งใดบ้างที่สามารถตรวจสอบได้ผ่านทาง linters, กระทำ hooks หรือเทียบเท่า?)

2
ปัญหาประสิทธิภาพขนานหลายเธรดกับลำดับฟีโบนักชีในจูเลีย (1.3)
ฉันกำลังลองใช้ฟังก์ชันมัลติเธรดJulia 1.3ด้วยฮาร์ดแวร์ต่อไปนี้: Model Name: MacBook Pro Processor Name: Intel Core i7 Processor Speed: 2.8 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB Hyper-Threading Technology: Enabled Memory: 16 GB เมื่อรันสคริปต์ต่อไปนี้: function F(n) if n < 2 return n else …


2
ฉันจะเปรียบเทียบฟังก์ชันของ Julia ได้อย่างไร
พื้นหลัง ฉันเรียนรู้ด้วยตนเองด้วยตนเองและเรียนรู้เกี่ยวกับระบบนิเวศน์ของจูเลียเมื่อไม่นานมานี้ มาจากพื้นหลังหลามและมี Tensorflow และOpenCV / skimageประสบการณ์ฉันต้องการเกณฑ์มาตรฐานห้องสมุด Julia ML (Flux / JuliaImages) กับคู่ของมันเพื่อดูว่ารวดเร็วหรือช้าจริง ๆ ทำงาน CV (ใด ๆ ) และตัดสินใจว่า ฉันควรเปลี่ยนไปใช้ Julia ฉันรู้วิธีรับเวลาในการดำเนินการฟังก์ชั่นในหลามโดยใช้timeitโมดูลเช่นนี้: #Loading an Image using OpenCV s = """\ img = cv2.imread('sample_image.png', 1) """ setup = """\ import timeit """ print(str(round((timeit.timeit(stmt = s, setup = setup, number = …
11 julia 

4
เหตุใดการแสดงออกของสารประกอบ
นี่คือตัวอย่างจากหนังสือที่ฉันอ่าน: volume = begin len = 10 breadth = 20 height = 30 len * breadth * height end เหตุใดฉันจึงต้องการนิพจน์แบบผสม ฉันสามารถเขียนvolume = 10 * 20 * 30หรือvolume = len * breadth * heightเขียนฟังก์ชันสำหรับฟังก์ชันนั้นหรือฟังก์ชันที่ไม่ระบุตัวตน ... ทำไมฉันถึงใช้beginและend? หรือคำถามที่อาจจะดีกว่า: เมื่อ ฉันจะใช้พวกเขาเป็นฉันเดาตัวอย่างข้างต้นจากหนังสืออาจจะไม่ดีมาก
10 julia 

1
ตัวดำเนินการมัดที่ผู้ใช้กำหนด
ฉันรู้ว่าผู้ประกอบการใน Julia เป็นเพียงฟังก์ชั่นมาตรฐานและฉันสามารถใช้พวกเขาโดยใช้ไวยากรณ์การโทรคำนำหน้าธรรมดา: julia> +(1, 2) 3 อย่างไรก็ตามพวกเขายังพิเศษในแง่ที่ว่าพวกเขาสามารถใช้ (และมักจะ) เป็นตัวดำเนินการมัด: julia> 1+2 3 ฉันสามารถกำหนดตัวดำเนินการมัดของตัวเองได้หรือไม่? ถ้าเป็นเช่นนั้นได้อย่างไร ตัวอย่างเช่น: julia> α(x, y) = x+y α (generic function with 1 method) julia> α(1, 2) 3 # as expected julia> 1α2 # expected result: 3 ERROR: UndefVarError: α2 not defined Stacktrace: [1] top-level scope at …
10 julia 

1
ยกระดับเมทริกซ์เอกลักษณ์ให้เป็นพลังงาน
เป็นไปได้ไหมที่จะยกระดับเมทริกซ์เอกลักษณ์ให้เป็นพลังงาน? ฉันได้รับข้อผิดพลาดหากฉันลองใช้^โอเปอเรเตอร์ x = [2 0 ; 0 2] x^2 # this works fine (2I)^2 #throws MethodError: no method matching ^(::UniformScaling{Int64}, ::Int64) หมายเหตุ: ฉันรู้ว่าฉันสามารถทำได้(2^2)Iแต่มีหลายกรณีที่สิ่งนี้ไม่สามารถทำได้ (เช่นเมื่อเมทริกซ์ถูกส่งผ่านไปยังฟังก์ชันที่ยกเมทริกซ์ขึ้นมา)
10 matrix  julia 

2
การส่งออกชื่อฟังก์ชันจะส่งออกรุ่นของฟังก์ชันที่แตกต่างกันทั้งหมดใน Julia หรือไม่
ฉันมีฟังก์ชั่นหลายอย่าง / ยื้อสำหรับชื่อฟังก์ชั่นเดียวกัน ฉันต้องการให้แน่ใจว่าพวกเขาจะถูกส่งออกทั้งหมด ฉันต้องรวมชื่อของฟังก์ชันในคำสั่งส่งออกแล้วให้ Julia ทำส่วนที่เหลือหรือไม่ ตัวอย่าง: function hello(a::Int64, b::Int64) #nothing end function hello(a::Bool, b::Bool) #nothing end export hello ทั้งสองอย่างนี้จะถูกส่งออกโดยเพียงแค่ทำexport hello?
10 julia 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.