Creating list from a matrix using pig

I am new to Pig. Could somebody point me how this can be done ?
I have a text file containing adjacency matrix:
* x1 x2 x3 x4 x5
x1 0 1 0 1 1
x2 0 0 0 1 0
x3 0 0 0 0 1
x4 0 0 0 0 0
x5 0 1 0 0 0
I want to create adjacency list from this matrix which should look like this
    x1 x2
    x1 x4
    x1 x5
    x2 x4
    x3 x5
    x5 x2  
so After I read matrix from the file : A = LOAD 'matrix.txt' USING PigStorage('\t') AS(x, x1, x2, x3, x4, x5); so DUMP A is now 
    (*,x1,x2,x3,x4,x5) 
    (x1,0,1,0,1,1) 
    (x2,0,0,0,1,0)
    (x3,0,0,0,0,1)
    (x4,0,0,0,0,0)
    (x5,0,1,0,0,0)
Now I want to create group that maps each x1, x2,x3,x4,x5 of the first column to other columns that have at least one 1 
Any help appreciated ! 

Hi Smith_john,
This one was tricky. Here what I have done to achieve the outcome.
 I remove column name from the dataset. The reason is I will provide column name from pig script.
                x1 0 1 0 1 1
                x2 0 0 0 1 0
                x3 0 0 0 0 1
                x4 0 0 0 0 0
                x5 0 1 0 0 0
   2.   On pig grunt shell write below query to load data
       A
=
LOAD'/user/pigdata/pigmatrix.txt'
AS
(x,x1,x2,x3,x4,x5);
   3.   Replacing with column name where it found 1.
      X
=
FOREACH
A
GENERATE
x,
(x1==1?'x1':''),
(x2==1?'x2':''),(x3==1?'x3':''), (x4==1?'x4':''), (x5==1?'x5':'')
   4.   Keeping first column as it is, Rest column converted into a bag. Flattening it to make rows
      row_f
=
foreach
X
generate
$0
as
id,
FLATTEN(TOBAG($1,$2,$3,$4,$5))
as
col2value;
    5.   Filter in record where there is value in second column
frec =
FILTER
row_f
by
(col2value
!=
    6.   Dump records (will print result mentioned in above screen)
            DUMP
frec;
Hope it helps. Please mark it answered if it answer your question.
Thank you for choosing Microsoft HDInsight Service.
Thanks and Regards,
Sudhir Rawat

Similar Messages

  • Adobe v9 on W7 and office 2007. cannot create PDF from MS word using Adobe. But can from Excel, PPT

    Adobe v9 on W7 and office 2007. cannot create PDF from MS word using Adobe. But can from Excel, PPT and other MS office apps. Reinslalled Adobe, updated Office, and Adobe no help! Also I can create a pdf from the MS Word and it is using the Adobe 9. So one would think that's good. No it isn't when you need to combine different files to one big PDF document. Any suggetions? Thank you

    Yes, I’m saying that I can in WORD use “Save As ADOBE pdf” but cannot in ADOBE create a pdf file from a WORD (.doc or .docx) document. While I can from other MS Office apps like Excel and PowerPoint.
    I understand I can use “work around” and save doc in WORD as pdf then compile all files needed (xml, ppt, pdf) in the ADOBE v9. to one big pdf document. But that is not the point of this post.  
    Jarda @ PC+NET Solutions
    Mobile 613-532-7023
    Office  613-385-1268
    <http://www.pcplusnet.net/> www.pcplusnet.net

  • I have created PDF from hardcopy by using my scanner. After I run OCR option for my PDF by using Acrobat Pro 9. But "Text-to-speech" functionality of the PDF says that an error message comes up that says the page is empty when I turns on the read out loud

    I have created PDF from hardcopy by using my scanner. After I run OCR option for my PDF by using Acrobat Pro 9. But "Text-to-speech" functionality of the PDF says that an error message comes up that says the page is empty when I turns on the read out loud option in Acrobat. Kindly help me to sortout this problems?

    So I tried generating the same PDFs on two other computers that have Acrobat 9 Pro.  Results were reproduced.  The verdict is:
    - complex PDF files (that is, containing cross-references, tables of contents, and bookmarks) generated by Acrobat 9.x Pro are roughly 2-5x larger than the identical file generated with Acrobat 8.x Pro.
    - different PDF conversion settings make a negligable difference (less than 10% rather than 70-80%).
    - using the "Reduce File Size" or "Optimize PDF" option cuts the file size roughly in half, almost always resulting in a "image downsampling mask" warning message, which requires acknowledgement (that is a problem for batch processing or automation).
    - adding an Acrobat watermark to the file cuts the file size roughly in half.
    - just using Save As to another filename has no effect on file size.
    - generating the PDF in Acrobat 9 with links but no PDF bookmarks still results in the inflated file size.
    - generating the PDF in Acrobat 9 without any links or bookmarks results in approximately the same file size as the Acrobat 8 PDF with full links and bookmarks.
    It appears that Acrobat 9's manner of adding links is what's bloating  the files, and in my case it's probably not related to images or image resolution/print quality.  It's a shame, because Acrobat 9 seems to have made some  improvements to the Review Tracker interface, and a few other bells and  whistles which I haven't really gotten around to exporing yet.  But  unless I find a way to keep my links and the PDF file sizes comparable to what I was  getting with Acrobat 8 Pro, it looks like I'm going to stay with Acrobat 8.

  • Create LIST from CFLOOP

    Hi all: I'm trying to create a list of 'ages' using CFLOOP
    with user input from 2 form fields - FirstAge & LastAge,
    filling in the ranges in between. Here is the relevant code:
    <cfloop index="i" from="#FirstAge#" to="#LastAge#"
    step="1"> <!--- user inputs FirstAge & LastAge --->
    <cfset age = #i#>
    </cfloop>
    <cfset ageList = ValueList(age)><!--- This should be
    a comma separated list from FirstAge to LastAge --->
    Any thoughts on how to accomplish this?

    Build the list inside the loop, one age at a time. Something
    like the code below should work.

  • Acrobat 8 can't locate scanner to create PDF from printed document using OCR

    Hello,
    I have an Epson scanner that is my default scanner on my OSX (10.6).  Every program I have locates my scanner perfectly except Acrobat 8.0.  Is there something I can do?
    From the home dialogue box I click "Create PDF from Scanner".  The next dialogue box opens and the Tab "Please Select a Device" doesn't let me scroll to find my scanner.  So the scan button is greyed out and I can't do anything.  Is there something I can do to make Acrobat clearly find my scanner?
    -Luis

    Check to see if they have a Native (not universal Binary) Twain Driver. Adobe refuses to allow universal Binary Twain Drivers in their programs.
    Either use a Software package from the SANE/TWAIN Project. (look up on Google). Or use a Pakage Like SilverFast.
    Before downloading the SANE/Twain Driver you have to look and see if the have a package for your current  OS  and for your particular Scanner. Stayaway from the SDK's unless your a Programer.
    Then when you install all the pieces and set up open Acrobat and go to document Create PDF from Scanner choose SANE/Twain. Should be able to scan with it.
    If you use SliverFast it is a standalone package  Just scan and save as a PDF then open in Acrobat.  or save as a Tiff or jpeg. Acrobat hasn't worked with a scanner since Macs went from OS9  to OSX.

  • Create PDF from Web page using Acrobat X - Page Order

    I have a structured web site that is in fact Program Help The web pages are structured as follows:
    index.html - Main Topic Index page with links to all topic subject index pages
    topic/index.html - Topic Subject Index Page with links to all subject pages
    topic/subject.html - Subject page
    .....etc
    Using Acrobat 5 "Create PDF from Web Page" created a perfect logical PDF  page structure in the page order of of the web site. In Acrobat 5 page 1  was the Main Topic Index Page, page 2 was the 1st Topic Subject Index  Page, page 3 was the 1st Subject Page, then the 2nd subject of the 1st  Topic, etc. until the Topic Subjects were exhausted after which the 2nd  Topic Subject Index Page and so it went on. As a result the bookmark  structure was sensible. The page order was as follows:
    Main Topic Contents
    Topic 1 Contents
    Subject 1 of Topic 1
    Subject 2 of Topic 1
    Topic N Contents
    Subject 1 of Topic N
    Subject 2 of Topic N
    Acrobat X (just purchased) produces a differently structured PDF from the same HTML pages. The order is:
    Main Topic Contents
    Topic 1 Contents
    Topic 2 Contents
    Topic N Contents
    Main Topic Contents (a second time)
    Subject 1 of Topic 1
    Subject 2 of Topic 1
    Subject N of Topic 1
    Subject 1 of Topic 2
    Subject 2 of Topic 2
    Subject N of Topic N
    Question: Is there any way I can get back with Acrobat X the same page order I got with Acrobat 5?
    Any help appreciated. The website is www.caliach.com/caliach/vision/help/index.html
    Chris

    Acrobat is using the underlying mark up of the rendered HTML page.
    This may or may not provide an adequate input to Acrobat when it is noodling out how and what to tag.
    I suspect you may find that, to obtain an adequately tagged PDF, you may have to capture the web page content with the create bookmarks and create tags options off.
    Once you have the PDF make working copies.
    Try letting Acrobat tag this already created PDF to see what happens.
    You may have to manually tag the PDF.
    n.b., The default read order for western language can be altered by user selections in the accesibility setup or by selection in the PDF page(s) Page Properties.
    Be well...

  • [CS4] How to create list entries having button using ADM ?

    Hi All,
    I  want to create list box using ADM whose entries can have button. like we see in layer panel, there is a button to select arts of layer as figure shows.
    I tried to use function like  sADMItem->AddItem(listBoxRef,linkButton)  but there is no effect.
    plz suggest how to do so.
    Thanks

    You can do this, but its a lot of work.
    First, you can't add buttons to list entries. Second, that's not an ADM list in the Layers panel, thats an ADM Hierarchy Control. If you have no children of top-level items, then it will look like a list.
    To do this, you'll need to use an ADM Hierarchy Control and you'll have to implement the Draw() routine of the entries of said control. It'll be up to you to draw everything -- the icon, the text, etc. Then you can also draw your 'button'.
    Next, you'll need to implemented the Track() routine. You can have it do the default for most things, but you'll need to check for clicks and see if they're in the bounds of the 'button' you drew. If so, you can do whatever you want that button to do (and change some state that makes the button draw differently). I don't reccommend animating the press of the button, though that's probably doable (its likely very hard though).
    The code for this is quite extensive, but I'd look at IADMHierarchyList.hpp & BaseADMHierarchyList.hpp/cpp in the SDK directory. You'll be sub-classing those guys to do all this. I don't know if there's any sample code demonstrating this or not.

  • How to disable - General preference - Create links from URLs. Using Acrobat Javascript

    http:\\www.sdss.com should not be suggested as a link. We have manual option to uncheck -> Create links from URLs, but I need to achieve this through the script.
    Please help on this ASAP.

    That is an end user preference only. Not accessible by JavaScript. If you control the installation, then you can turn off that option for the installation but the user could still turn it back on.

  • Create PDF from Web Page Using URL List

    Hello
    I have a list of 100+ URLs which I would like to convert into PDF's
    I currently need to open each web page and hit the convert button
    Is there a way to automate the process. (For example can I import the list of URL's into Acrobat) and have Acrobat convert all the urls into PDF
    Thank you

    JohnnyNobody wrote:
    S.D.A.
    Your response did not show up, could you please repeat
    Thanks
    Sure, (e-mail responses aren't working good I'm afraid).
    What I said; was that I don't know of a 'pont 'n click' way of doing this, It can be done programmtically.
    Might not be what you want to hear though.

  • How to fetch Properties of all Survey Lists from site collection using Java Script in SharePoint 2013

    Hi,
    I am trying to fetch properties of all lists of "Survey Type" from my site collection in SharePoint 2013 using script editor web part. I am able to fetch properties of one list by mentioning its name explicitly in code but not all survey
    list.
    My task is to display Survey name , description ,Time created and URLs of all survey lists using java script in script editor web part.
    And let me know , if there is any other OOB feature of SharePoint 2013 to achieve the same. 
    Here is the code  :
    <script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady);
    function sharePointReady() {
         GetSurveyList();
     function GetSurveyList() {
            var spListTitle = " List Name";
             var clientContext = new SP.ClientContext.get_current();
            var oWeb = clientContext.get_web();
            this.surveyList = oWeb.get_lists().getByTitle(spListTitle);
            clientContext.load(surveyList);
            clientContext.executeQueryAsync(Function.createDelegate(this, this.GetListProperties),Function.createDelegate(this, this.onFailure));
     function GetListProperties() {
            $("#SurveyList").text("");
            var surveyTable = "<table border=1>";
            surveyTable = surveyTable.concat("<tr><td>Survey Name</td>");
            surveyTable = surveyTable.concat("<td>Survey Description</td>");
            surveyTable = surveyTable.concat("<td>Time Created</td>");
            surveyTable = surveyTable.concat("<tr><td>" + surveyList.get_title() + "</td>");
            surveyTable = surveyTable.concat("<td>" + surveyList.get_description() + "</td>");
            surveyTable = surveyTable.concat("<td>" + surveyList.get_created().format("MM/dd/yyyy hh:mm tt")+ "</td>");
                 surveyTable = surveyTable.concat("</table>");
            $("#SurveyList").append(surveyTable);
        function onFailure(sender, args) {
            alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    </script>
    <div id="SurveyList"></div>

    Shifa,
    Please use search result webpart or content query webpart to list all survey list.
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Create PDF from Web page using Acrobat 9 Pro

    I am trying to create a PDF file from a web page.  The alt tags for images is not being recognized, and the reading order bounces all over the page (not the order of the web page).  For example, the 1st text item on the page is #7 in the reading order, and the #1 item is an image half way down the page.  All the documentation I can find says Acrobat will read top to bottom, left to right, but it's not.  Any idea how to fix it?

    Acrobat is using the underlying mark up of the rendered HTML page.
    This may or may not provide an adequate input to Acrobat when it is noodling out how and what to tag.
    I suspect you may find that, to obtain an adequately tagged PDF, you may have to capture the web page content with the create bookmarks and create tags options off.
    Once you have the PDF make working copies.
    Try letting Acrobat tag this already created PDF to see what happens.
    You may have to manually tag the PDF.
    n.b., The default read order for western language can be altered by user selections in the accesibility setup or by selection in the PDF page(s) Page Properties.
    Be well...

  • Cannot create list in SharePoint 2010 using Client Object Model

    I am trying to utilize SharePoint 2010 Client Object Model to create a List based on a custom template. Here's my code:
    public void MakeList(string title, string listTemplateGUID, int localeIdentifier)
    string message;
    string listUrl;
    List newList;
    Guid template;
    ListCreationInformation listInfo;
    Microsoft.SharePoint.Client.ListCollection lists;
    try
    listUrl = title.Replace(spaceChar, string.Empty);
    template = GetListTemplate((uint)localeIdentifier, listTemplateGUID);
    listInfo = new ListCreationInformation();
    listInfo.Url = listUrl;
    listInfo.Title = title;
    listInfo.Description = string.Empty;
    listInfo.TemplateFeatureId = template;
    listInfo.QuickLaunchOption = QuickLaunchOptions.On;
    clientContext.Load(site);
    clientContext.ExecuteQuery();
    lists = site.Lists;
    clientContext.Load(lists);
    clientContext.ExecuteQuery();
    newList = lists.Add(listInfo);
    clientContext.ExecuteQuery();
    catch (ServerException ex)
    Now, this particular part, newList = lists.Add(listInfo); clientContext.ExecuteQuery();, the one that is supposed to create the actual list, throws an exception:
    Message: Cannot complete this action. Please try again.
    ServerErrorCode: 2130239231
    ServerErrorTypeName: Microsoft.SharePoint.SPException
    Could anyone please help me realize what am I doing wrong? Thanks.

    I've made progress - well, at least to some extent. The previous message related to the "Invalid file name" is not appearing any more. I now realize that it is necessary to specify feature ID, list template kind, as well as custom schema in order
    to order SharePoint 2010 to create the document library. 
    However, there's a new problem which isn't documented on the net almost at all (at least I was unable to find anything): The document library gets created, but I cannot access it. Further inspection showed that the doc lib views are not created. Basically,
    the only accessible doc lib page is the document library settings page. Also, I get the server exception with the message: 
    Server Out Of Memory. There is no memory on the server to run your program. Please contact your administrator with this problem.
    Any idea what is causing this issue? Thanks. 
    Hi Boris
    Borenović,
    I think I found the reason for this notorious "Server Out Of Memory" error.
    (Man, it took 4 hrs of frustrating troubleshooting without any direct hints... very disappointing
    MSFT developers :( ).
    Anyway,
    All the "Form" elements at the bottom need to have SetupPath="pages\form.aspx"
    attribute (by default this attrib is missing when you copy the whole List element from inside the stp's manifest.xml  file).
    Also, just make sure that each "View" element has correct "WebPartZoneID", "SetupPath" and "Url" attribute values otherwise that list/library will
    be created successfully but will fail to load when you try to access it (with the VERY helpful "Cannot complete this action, contact administrator" error). Even if you enable stack trace (or check ULS logs) you will find "An unexpected
    error has been encountered in this Web Part.  Error: A Web Part or Web Form Control on this Page cannot be displayed or imported. The type could not be found or it is not registered as safe." and you will never realize it's because of the
    incorrect attributes ("WebPartZoneID", "SetupPath" or "Url" as mentioned above).
    Come on Microsoft, you can do better than that?
    If the API needs this attrib then why is it missing inside the manifest.xml file when
    an STP file generated in the first place?

  • Retrieving user created variables from multiple instances using PAPI-WS

    Hi,
    I'm using PAPI-WS to retrieve a list of instances from Oracle BPM 10.3.1.0.0 using ProcessGetInstance. These are modeled as external tasks. ProcessGetInstance returns an InstanceInfoBean which has no place for user defined variables that were set when the instances were started.
    The only way to get user defined variables seems to be to iterate through the entire list and send an InstanceGetVariable request for each one. InstanceGetVariable does not seem allow more than one instance id to be specified in a call from my testing. This is very inefficient since we could easily have hundreds of instances that we're trying to display. Is there some way to get the list of instances to include the user defined variables, or to get the user defined variables for more than one instance in a single call?
    Thanks,
    Steve

    I can't reproduce the problem. This is what I see:C:\temp>javac -cp . Ttest.java
    C:\temp>java -version
    java version "1.6.0"
    Java(TM) SE Runtime Environment (build 1.6.0-b105)
    Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)
    C:\temp>java -cp . Ttest
    1
    3
    3

  • Creating .swf from .fla file using ADT command line

    Dear Adobe Community and Moderators:
    Is it possible to use the ADT command line to directly compile an .fla file into an .swf file? Context: I have an app created in Flash Pro CS55 (6 months worth of work), but now found Adobe has dropped Flash Pro in favor of Flash Builder or Flex. I have some native extensions I want to use for iOS, but they require Air 3.1 to compile (swf-version=14) i.e. using the MessageUI framework in a static .a library for an Air app. Flash Pro CS55's top end limit seems to be swf-version=13 (Flash 11). Because of heavy investment in time and energy into our Air app in Flash Pro, it's not feasible to convert to Flex by end of week. I tried creating an .swc file, and taking the library.swf from that, but alas, a catch-22, Flash Pro CS55 only compiles to swf-version=13.
    Is there any way to either (a) directly compile my root .swf file (from the .fla file) using a command line (so I can use ADT from Air 3.1 SDK) or (b) some way I can marry a native extension I've found I can use on GitHub which is swf-version=14? Again, my issue is that I have to use Air 3.1 since only it supports iOS5.
    Any thoughts, suggestions, comments are highly appreciated (including if it's not possible to do what I'm trying to do).
    Thank you Adobe community in advance,
    Alex

    I have the exact same question, please respond if you hold the answer to this! mxmlc won't work for me since I have created too many assets within the fla already! Thanks!

  • Creating XML from Relational Tables using java

    I would like to create an XML document by querying relational tables in java
    try {
            connection = getConnection();
            final String qryStr = "select XMLElement( foo, 'bar' ) from dual";
            final OracleXMLQuery qry = new OracleXMLQuery(connection, qryStr);
            final String xmlString = qry.getXMLString();
    I would expect this to give the following result that I get from running the statement in SQL Developer
    select XMLElement( foo, 'bar' ) from dual
    <FOO>bar</FOO>
    Instead I get
    <?xml version = '1.0'?>
    <ERROR>oracle.xml.sql.OracleXMLSQLException: Character ')' is not allowed in an XML tag name.</ERROR>
    Is this the correct way to go about this?

    Is this the correct way to go about this?
    Not really.
    OracleXMLQuery class is the Java-side implementation of DBMS_XMLQUERY APIs.
    It's mostly designed to generate a canonical XML document out of a SQL query.
    Assuming a query like "SELECT col1, col2 FROM my_table", the resulting XML should appear like this :
    <ROWSET>
      <ROW>
        <COL1>123</COL1>
        <COL2>ABC</COL2>
      </ROW>
      <ROW>
        <COL1>456</COL1>
        <COL2>XYZ</COL2>
      </ROW>
    </ROWSET>
    So in your test, since the resulting column is not aliased (XMLElement), you're actually trying to generate something like this :
    <ROWSET>
      <ROW>
        <XMLELEMENT(FOO,'BAR')>
          <FOO>bar</FOO>
        </XMLELEMENT(FOO,'BAR')>
      </ROW>
    <ROWSET>
    which of course is invalid, hence the error message.
    If you want to generate only <FOO>bar</FOO> as output, just use a regular PreparedStatement with your query and access the document in the ResultSet with the proper getter.

Maybe you are looking for

  • Character counter does not display data on IE when counter is 0

    Hi, I am implementing a character counter in ADF using Javascript (referencing this http://www.oracle.com/technetwork/developer-tools/adf/learnmore/10-char-input-counter-169133.pdf). I display the string --> 'x' characters left The problem that I am

  • Icons on one side won't open

    I have an ipod touch and the icons on the right side of my screen will not respond for some reason. Any suggestions?

  • Best practice for test to production

    I actually only have one server for test and production, but the dev processes all point to development databases and the production processes will point to production databases. The only real change is to make the JMS queue points to prod vs test. T

  • Really frustrating Null Pointer Exception

    Hi I had the day off and was bored so I decided to start work on a poker game. Today I just started making a deck of cards and drawing a random card from it. However it isn't working as I get a very annoying null pointer exception which I don't under

  • Is it possible to install a sound Blaster X-FI at the same time as a EMU 1820 M on the same

    Hi i need to isntall the both sound card on the same PC in order to take advantage to the music play, game enhancement of the X-Fi and also take advantage of the EMU 820m for music creation.... my question is : is it posssible to install them at the