2015-10-29 4 views
7

इन सभी तिथियों में मैंने Azure Machine Learning में निष्पादन आर मॉड्यूल में हेरफेर किया है आउटपुट में रिक्त के रूप में लिखना - यानी, ये दिनांक कॉलम मौजूद हैं, लेकिन उन कॉलम में कोई मूल्य नहीं है।स्ट्रेटटाइम फ़ंक्शन के लिए एज़ूर एमएल में वर्तमान समय क्षेत्र को परिभाषित करने के लिए, अज्ञात टाइमज़ोन 'लोकटाइम'

स्रोत वेरिएबल्स जिनमें डेटा फ्रेम में पढ़ने वाली तारीख जानकारी होती है, में दो अलग-अलग दिनांक प्रारूप होते हैं। वे निम्नानुसार हैं:

usage$Date1=c(‘8/6/2015’ ‘8/20/2015’ ‘7/9/2015’) 
usage$Date2=c(‘4/16/2015 0:00’, ‘7/1/2015 0:00’, ‘7/1/2015 0:00’) 

मैंने एएमएल में लॉग फ़ाइल का निरीक्षण किया, और एएमएल स्थानीय समय क्षेत्र नहीं ढूंढ सकता। लॉग फ़ाइल चेतावनियां विशेष रूप से: [मॉड्यूलऑटपुट] 1: स्ट्रिपटाइम (x, प्रारूप, tz = tz): [मॉड्यूलऑटपुट] वर्तमान टाइमज़ोन 'सी' की पहचान करने में असमर्थ: [मॉड्यूलऑटपुट] कृपया पर्यावरण चर 'TZ' सेट करें [ ModuleOutput] [ModuleOutput] 2: strptime (एक्स, स्वरूप, TZ = TZ) में: अज्ञात समय क्षेत्र 'स्थानीयसमय'

मैं सेटिंग डिफ़ॉल्ट समय यहाँ

unknown timezone name in R strptime/as.POSIXct

strptime के लिए क्षेत्र के बारे में एक और उत्तर करने के लिए भेजा

मैंने वैश्विक कोड समय को स्पष्ट रूप से परिभाषित करने के लिए अपना कोड बदल दिया चर।

Sys.setenv(TZ='GMT') 


####Data frame usage cleanup, format and labeling 
usage<-as.data.frame(usage) 
usage$Date1<-as.character(usage$Date1) 
usage$Date1<-as.POSIXct(usage$Date1, "%m/%d/%Y",tz="GMT") 
usage$Date1<-format(usage$Date1, "%m/%d/%Y") 
usage$Date1<-as.Date(usage$Date1, "%m/%d/%Y") 
usage<-as.data.frame(usage) 

usage$Date2<- as.POSIXct(usage$Date2, "%m/%d/%Y",tz="GMT") 
usage$Date2<- format(usage$Date2,"%m/%d/%Y") 
usage$Date2<-as.Date(usage$Date2, "%m/%d/%Y") 
usage<-as.data.frame(usage) 

समस्या बनी रहती है - नतीजतन AzureML इन चरों को रिक्त स्थान के रूप में लिखने के बजाय इन चरों को नहीं लिखता है।
(। इस कोड को आर स्टूडियो, मैं जहां अनुमान स्थानीय समय प्रणाली से लिया जाता है में काम करता है)

इस समस्या पर दो ब्लॉग पोस्ट पढ़ने के बाद, ऐसा लगता है कि Azure एमएल कुछ दिनांक समय स्वरूपों का समर्थन नहीं करता:

http://blogs.msdn.com/b/andreasderuiter/archive/2015/02/03/troubleshooting-error-1000-rpackage-library-exception-failed-to-convert-robject-to-dataset-when-running-r-scripts-in-azure-ml.aspx

http://www.mikelanzetta.com/2015/01/data-cleaning-with-azureml-and-r-dates/

तो मैं यह उत्पादन धारा है, जो मैं इस प्रकार किया है करने के लिए भेजने से पहले POSIXct में बदलने की कोशिश की: tenantusage $ तिथि 1 = as.POSIXct (tenantusage $ तिथि 1, "% एम /% d /% Y", tz = "EST5EDT"); किरायेदार $ Date2 = as.POSIXct (किरायेदार $ Date2, "% m /% d /% y", tz = "EST5EDT");

लेकिन एक ही समस्या का सामना करना पड़ता है। इन चरों में दी गई जानकारी आउटपुट को लिखने से इंकार कर देती है। दिनांक 1 और दिनांक 2 कॉलम खाली हैं।

कृपया सलाह दें!

धन्यवाद

+0

में आपके काम को अनवरोधित करने में मदद करता है, वही त्रुटि प्राप्त करना, कोई कामकाज नहीं मिल सकता – SochiX

उत्तर

0

हाय SingingData और SochiX,

हताशा के इस स्रोत के बारे में सुनने के लिए खेद है! मुझे लगता है कि SingingData के कोड नमूने पर निम्नलिखित भिन्नता मुझे (एक क्रैन 3.1.0 मॉड्यूल में परीक्षण) के लिए काम करता है:

usage <- data.frame(list(Date1 = c('8/6/2015', '8/20/2015', '7/9/2015'), 
         Date2 = c('4/16/2015 0:00', '7/1/2015 0:00', '7/1/2015 0:00'))) 
usage$Date1 <- as.POSIXlt(usage$Date1, "%m/%d/%Y",tz="GMT") 
usage$Date2 <- as.POSIXlt(usage$Date2, "%m/%d/%Y",tz="GMT") 

usage$Date1 <- format(usage$Date1, "%m/%d/%Y") 
usage$Date2 <- format(usage$Date2,"%m/%d/%Y") 

usage$Date1 <- as.Date(usage$Date1, "%m/%d/%Y") 
usage$Date2 <- as.Date(usage$Date2, "%m/%d/%Y") 

maml.mapOutputPort("usage"); 

मैं as.POSIXlt() बजाय as.POSIXct() का उपयोग किया है। मुझे उम्मीद है कि यह आर

संबंधित मुद्दे