যখন আমি আর প্যাকেজগুলির উত্সটি দেখি, আমি ফাংশনটি sweepপ্রায়শই ব্যবহৃত দেখি । কখনও কখনও এটি ব্যবহার করা হয় যখন কোনও সহজ ফাংশন যথেষ্ট হয়ে যায় (উদাহরণস্বরূপ, apply), অন্য সময়, কোড ব্লকটিতে প্রবেশের জন্য যথেষ্ট পরিমাণ সময় ব্যয় না করে এটি ঠিক কী করছে তা জানা অসম্ভব।
sweepএকটি সহজ ফাংশন ব্যবহার করে আমি এর প্রভাব পুনরুত্পাদন করতে পারি তা প্রমাণ করে যে আমি sweepমূল ব্যবহারের ক্ষেত্রে বুঝতে পারি না এবং এই ফাংশনটি প্রায়শই ব্যবহৃত হয় তা বোঝায় যে এটি বেশ কার্যকর।
প্রসঙ্গ:
sweepআর এর স্ট্যান্ডার্ড লাইব্রেরিতে একটি ফাংশন; এর যুক্তিগুলি হ'ল:
sweep(x, MARGIN, STATS, FUN="-", check.margin=T, ...)
# x is the data
# STATS refers to the summary statistics which you wish to 'sweep out'
# FUN is the function used to carry out the sweep, "-" is the default
আপনি দেখতে পাচ্ছেন, আর্গুমেন্টগুলির অনুরূপ applyযদিও sweepআরও একটি প্যারামিটার প্রয়োজন STATS।
আর একটি মূল পার্থক্য হ'ল ইনপুট অ্যারের মতো একই আকারেরsweep একটি অ্যারে প্রদান করে , যেখানে ফলস্বরূপ প্রাপ্ত ফলাফলটি কার্যক্রমে প্রবেশের উপর নির্ভর করে।apply
sweep কর্মে:
# e.g., use 'sweep' to express a given matrix in terms of distance from
# the respective column mean
# create some data:
M = matrix( 1:12, ncol=3)
# calculate column-wise mean for M
dx = colMeans(M)
# now 'sweep' that summary statistic from M
sweep(M, 2, dx, FUN="-")
[,1] [,2] [,3]
[1,] -1.5 -1.5 -1.5
[2,] -0.5 -0.5 -0.5
[3,] 0.5 0.5 0.5
[4,] 1.5 1.5 1.5
সুতরাং সংক্ষেপে, আমি যা খুঁজছি তা অনুকরণীয় ব্যবহারের ক্ষেত্রে বা দু'জনের জন্য sweep।
দয়া করে আর ডকুমেন্টেশন, মেলিং তালিকাগুলি বা 'প্রাথমিক' আর উত্সগুলির কোনওরই আবৃত্তি বা লিঙ্ক করবেন না - ধরে নিন আমি সেগুলি পড়েছি। আমি যে বিষয়ে আগ্রহী তা হ'ল অভিজ্ঞ আর প্রোগ্রামার / বিশ্লেষকরা কীভাবে sweepতাদের নিজস্ব কোড ব্যবহার করেন।