যেহেতু সমস্যাটি অনেক পরিসংখ্যান সংক্রান্ত সফ্টওয়্যার পরিবেশে সাধারণ, তাই এটি আর-নির্দিষ্ট ফোরামে স্থানান্তরিত করার পরিবর্তে ক্রস ভ্যালিডেটে এখানে আলোচনা করুন (যেমন স্ট্যাকওভারফ্লো)।
বাস্তব সমস্যা যে Date
একটি হিসাবে গণ্য হবে ফ্যাক্টর বিযুক্ত পরিবর্তনশীল --a - এবং তাই লাইন সঠিকভাবে সংযুক্ত হচ্ছে না। (বা পয়েন্টগুলি সঠিকভাবে অনুভূমিক দিকের সাথে প্লট করা হচ্ছে না))
ডানহাতে চক্রান্ত করার জন্য, Date
ক্ষেত্রটি একটি ফ্যাক্টর থেকে একটি আসল তারিখে রূপান্তরিত হয়েছিল, প্রতিটি সপ্তাহকে একটি সাধারণ গণনা (শনিবার ও রবিবারের মধ্যে সপ্তাহ ভেঙে) দিয়ে চিহ্নিত করা হয়েছিল এবং সপ্তাহগুলিতে লুপগুলি সাপ্তাহিক ছুটিতে লাইনগুলি ব্যাহত হয়েছিল:
oracle$date <- as.Date(oracle$Date)
oracle$week.num <- (as.integer(oracle$date) + 3) %/% 7
oracle$week <- as.Date(oracle$week.num * 7 - 3, as.Date("1970-01-01", "%Y-%m-%d"))
par(mfrow=c(1,2))
plot(as.factor(unclass(oracle$Date[1:120])), oracle$Open[1:120], type="l",
main="Original Plot: Inset", xlab="Factor code")
plot(oracle$date[1:120], oracle$Open[1:120], type="n", ylab="Price",
main="Oracle Opening Prices")
tmp <- by(oracle[1:120,], oracle$week[1:120], function(x) lines(x$date, x$Open, lwd=2))
(প্রতি সপ্তাহের সমতুল্য তারিখ, সেই সপ্তাহের oracle
সোমবারটিও ডেটাফ্রেমে সংরক্ষণ করা হয়েছিল কারণ এটি সাপ্তাহিক সমষ্টিগত ডেটা প্লট করতে কার্যকর হতে পারে))
সমস্ত ডেটা প্রদর্শন করার জন্য শেষ লাইনটি অনুকরণ করে মূল অভিপ্রায় অর্জন করা যেতে পারে। মৌসুমী আচরণ সম্পর্কে কিছু তথ্য যুক্ত করতে, প্রতিটি ক্যালেন্ডার বছর জুড়ে নিম্নলিখিত প্লটটি সপ্তাহের মধ্যে রঙ পরিবর্তিত হয়:
par(mfrow=c(1,1))
colors <- terrain.colors(52)
plot(oracle$date, oracle$Open, type="n", main="Oracle Opening Prices")
tmp <- by(oracle, oracle$week,
function(x) lines(x$date, x$Open, col=colors[x$week.num %% 52 + 1]))