Do word cloud cards have the capability to parse individual words from a phrase or sentence?

In my dataset, I have full sentences as commentary on a question and I would like the word cloud card to parse out each word in the comments and aggregate a count of most commonly cited words. Do word cloud cards have the capability to parse individual words from a phrase or sentence, aggregate and then provide a count? I would love to be able to then click into a given word and read all of the comments that include that word.

Answers

  • Unfortunately they don't, but I think that's a common enough request that Domo has it on their radar.  Make sure to have this on the Ideas Exchange if it's not already.  I also do know that, once upon a time, Domo consultants had developed a dataflow to do this parsing.  It's been a couple years since I saw that, though.  It wouldn't hurt to inquire with your consultant or success manager.

    Aaron
    MajorDomo @ Merit Medical

    **Say "Thanks" by clicking the heart in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • Thanks! That's what I was afraid of.

     

    I'll be sure to add it to the ideas page!

  • You, sir/maam, win the Domo-net today! Thanks!

  • I'm trying to use this but on the first transform when I run the SQL it gives me the error:

     

    'The database reported a syntax error. PROCEDURE word_cloud already exists'

     

    Can someone help me out!?!?

     

    Thanks!

  • When I followed the instruction in https://knowledge.domo.com/Visualize/Adding_Cards_to_Domo/KPI_Cards/Building_Each_Chart_Type/Word_Cloud_Chart, I came across this error: 

     

    "The database reported a syntax error. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL' at line 1"

     

    Can anyone help?

  •  

     I'm getting the following error when I try using these instructions:

     

    The database reported a syntax error. PROCEDURE dataflow_c7d35d3fc4104a2c87bb08f12b3880de.string_split does not exist

     

    Are the instructions no longer valid?

     

  • Anyone still looking for this on this thread - this just helped me.  Scroll down for the code to handle phrases.  

    http://knowledge.domo.com?cid=wordcloud

     

     

    DataMaven
    Breaking Down Silos - Building Bridges
    **Say "Thanks" by clicking a reaction in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • Datamaven, I'm trying to work with this today (it must be in the air).  I'm having trouble with step 2.  When I copy/paste and modify the code as directed from call_transform_2.sql I'm getting an error. 

     

    here's my code:

    #Word Cloud V2
    #Example: CALL word_cloud('sample_word_cloud_nolan', '`Sentence`' , 'y','y' );
    CALL word_cloud('exp_word_cloud_input', '`RESPONSES_COLUMN`' , 'y','y' );

     

    "The database reported a syntax error. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL' at line 1"

     

    Are you able to assist or provide an example of how to get this MySQL dataflow working?

  • Here's what I just built that worked.  I ended up retypying it to make it work.  I got errors at first, too.  

     

    CALL word_cloud('fake_phrases','`Statements`' , 'y','y' );

     

    Looking at the error - Make sure that you have run and applied the previous transform.  I have missed that 8 out ot 10 times that I get an error!  lol

     

    Also check your dataset for blank values.  I wouldn't think that would be a factor, but the error is weird.  

    DataMaven
    Breaking Down Silos - Building Bridges
    **Say "Thanks" by clicking a reaction in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • Wow what a journey that was to get it working... I ensured that blank and null values were stripped in my dataflow.  I then shortened my table names, in reality my table name was closer to 40 characters and my column name was 22 characters.  I shortened these down to about 10 characters each through renaming/data flows.  In the end I got it working and it had to be one of these things that enabled it to succeed.  Thanks for the vote of confidence that it could work @DataMaven , thanks to you, I didn't give up hope! Robot Very Happy

  • @JasonAltenburg  - I am so glad I give you hope!!!  lol

    Did you happen to run into cases where the same word would appear twice because it was sometimes capitalized and sometimes not?

    Might I lean on your SQL lazily and ask you if you know the right place to toss in a PROPER function?  I am just going to mess it up 6 times, and the query is already running an hour and a half and hasn't stopped for the real dataset I just applied it to!  ugh!

     

     

    DataMaven
    Breaking Down Silos - Building Bridges
    **Say "Thanks" by clicking a reaction in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • I did find this!

     

    What I did was added the LOWER() function to the text field as my first step in the SQL dataflow.

     

    UPDATE table_name SET sentences = LOWER(sentences)
  • @JasonAltenburg - What did you do that made your word cloud sql work?  I am replicating in another environment, and it keeps failing!!!

    DataMaven
    Breaking Down Silos - Building Bridges
    **Say "Thanks" by clicking a reaction in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • I strongly believe it was shortening the name of the input table and the name of the column with sentences in it for step 2 of the SQL transforms down to <10 characters or so, all lowercase.  I also added a magic ETL step prior to this where I stripped out null and blank values from the sentences column.  (Filter for sentences_column IS NOT NULL and then does not equal Empty String)

     

    I just made another one today and these steps seem to ensure it works.

     

    Also be careful copy/pasting directly from the text in the help page... this code is shown and note the different single quote at the end next to the n character...

     

    CALL word_cloud('survey_results', '`feedback`' , 'y','n’ );

     

  • DomoFaye
    DomoFaye Domo Employee

    Hiya,

     

    I tried to retype the statement, but still getting an error "The database reported a syntax error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL' at line 1"

     

  • @JasonAltenburg how big is your dataset?  using SQL to create a word document matrix is a little square-peg-round-hole-ish.

     

    I built a tutorial around a similar topic here. 

    http://www.onyxreporting.com/blog/domo-parsing-json-in-a-mysql-56-dataflow

    the SQL is actually creating tables, but may not run as efficiently as the stored procedure, so it depends on the size of your database.

     

    I haven't reimplemented this solution in Magic 2.0, but I suspect with a reasonable size dataset you could pull it off more efficiently than the MySQL pipeline and have a more transparent ETL.  Also implementing stop words would be a matter of having a table with a list of stop words and then JOIN and filter out the matches.

    if you have python / r scripting, it'll be SO MUCH FASTER (i think).  

     

     

    Jae Wilson
    Check out my 🎥 Domo Training YouTube Channel 👨‍💻

    **Say "Thanks" by clicking the ❤️ in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
This discussion has been closed.