যদি / সময় (শর্ত) in এ ত্রুটি: সত্য বা মিথ্যা প্রয়োজন যেখানে মান অনুপস্থিত


159

আমি এই ত্রুটি বার্তা পেয়েছি:

Error in if (condition) { : missing value where TRUE/FALSE needed

অথবা

Error in while (condition) { : missing value where TRUE/FALSE needed

এর অর্থ কী এবং আমি কীভাবে এটি প্রতিরোধ করব?


5
ডাবল সমান অপারেটর NAউভয় পক্ষের একটি সহ্য করতে পারে না । যদি আমি সংজ্ঞায়িত করি: x = NAএবং তারপরে একটি করি if (x == NA){ ... }তবে পার্সার যখন ডাবল সমান বাম হাতের অংশটি পরীক্ষা করবে তখন রানটাইমের সময় এই ত্রুটিটি ছুড়ে দেওয়া হবে। এই ত্রুটির প্রতিকারের জন্য, নিশ্চিত করুন যে আপনার শর্তাধীন প্রতিটি পরিবর্তনশীল এনএ ব্যবহার করছে না is.na(your_variable)
এরিক লেসচিনস্কি

উত্তর:


203

মূল্যায়ন একটি conditionফলাফল NAifশর্তাধীন আছে হয় একটি আবশ্যক TRUEবা FALSEস্থাপিত।

if (NA) {}
## Error in if (NA) { : missing value where TRUE/FALSE needed

এটি গণনার ফলাফল হিসাবে ঘটনাক্রমে ঘটতে পারে:

if(TRUE && sqrt(-1)) {}
## Error in if (TRUE && sqrt(-1)) { : missing value where TRUE/FALSE needed

কোনও বস্তুর is.na(x)পরিবর্তে ব্যবহার অনুপস্থিত কিনা তা পরীক্ষা করতে x == NA


সম্পর্কিত ত্রুটিগুলিও দেখুন:

যদি / সময় (শর্ত) in তে ত্রুটি: যুক্তি শূন্যের হয়

যদি / সময় (শর্ত) তে ত্রুটি: যুক্তিটি যৌক্তিক হিসাবে ব্যাখ্যাযোগ্য নয়

if (NULL) {}
## Error in if (NULL) { : argument is of length zero

if ("not logical") {}
## Error: argument is not interpretable as logical

if (c(TRUE, FALSE)) {}
## Warning message:
## the condition has length > 1 and only the first element will be used

10

শূন্য বা ফাঁকা স্ট্রিংয়ে যাচাই করার সময় আমি এটিতে ছুটে এসেছি

if (x == NULL || x == '') {

এটা পরিবর্তন

if (is.null(x) || x == '') {

1
ফাই, আরও আছে!(length(x) == 1L && nzchar(x))
ফ্রাঙ্ক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.