gpt4 book ai didi

javascript - 如何根据推文是否具有积极或消极情绪来更改处理中的背景颜色?

转载 作者:行者123 更新时间:2023-12-03 08:13:19 25 4
gpt4 key购买 nike

我是处理新手,我正在尝试创建一个交互式信息图表,其中背景颜色根据有关事件的最新推文包含正面还是负面词语而变化。对于积极的推文,背景将为黄色,对于消极的推文,背景将为红色。

我已经让该项目正常运行,以便它在控制台中显示提及“温布利”(赛事)的最新推文。

我不知道如何在控制台数据中打印的文本中找到积极和消极的单词。

为了尝试执行此操作,我设置了一个字符串数组来列出我想要触发背景颜色更改的所有正面和负面单词:

String [] positiveWords = new String[6];
{
positiveWords [0] = "great";
positiveWords [1] = "love";
positiveWords [2] = "amazing";
positiveWords [3] = "fun";
positiveWords [4] = "brilliant";
positiveWords [5] = "good";
}

String [] negativeWords = new String[4];
{
negativeWords [0] = "bad";
negativeWords [1] = "hate";
negativeWords [2] = "terrible";
negativeWords [3] = "boring";
}

然后我将 if 语句放入 void draw()

  if (console.log = positiveWords)  {
background (0, 100, 100);
}

if (console.log = negativeWords) {
background (255, 0, 0);
}

这会返回错误‘期待 LPAREN,找到‘控制台’

这几天我一直在到处寻找答案,但我却不知所措!任何帮助将非常非常感激!非常感谢。

完整源代码在这里:

import com.temboo.core.*;
import com.temboo.Library.Twitter.Search.*;


//string array to identify positive words
String [] positiveWords = new String[6];
{
positiveWords [0] = "great";
positiveWords [1] = "love";
positiveWords [2] = "amazing";
positiveWords [3] = "fun";
positiveWords [4] = "brilliant";
positiveWords [5] = "good";
}

//string array to identify negative words
String [] negativeWords = new String[4];
{
negativeWords [0] = "bad";
negativeWords [1] = "hate";
negativeWords [2] = "terrible";
negativeWords [3] = "boring";
}


// Create a session using your Temboo account application details
TembooSession session = new TembooSession("userName", "appName", "******");

// The name of your Temboo Twitter Profile
String twitterProfile = "Twittersearch1";

// Declare font and text strings
PFont fontTweet, fontInstructions;
String searchText, tweetText, instructionText;

// Create a JSON object to store the search results
JSONObject searchResults;

void setup() {
size(700, 350);

// Set a search term and instructions

searchText = "wembley";

instructionText = "Press any key to load a new tweet about '"+searchText+"'";

// Display initial tweet
runTweetsChoreo(); // Run the Tweets Choreo function
getTweetFromJSON(); // Parse the JSON response
displayText(); // Display the response
}

void draw() {
if (keyPressed) {
runTweetsChoreo(); // Run the Tweets Choreo function
getTweetFromJSON(); // Parse the JSON response
displayText(); // Display the response
}

//if statements to change the background color

if (tweetsResults = positiveWords) {
background (0, 100, 100);
}

if (tweetsResults = negativeWords) {
background (255, 0, 0);
}
}


void runTweetsChoreo() {
// Create the Choreo object using your Temboo session
Tweets tweetsChoreo = new Tweets(session);

// Set Profile
tweetsChoreo.setCredential(twitterProfile);

// Set inputs
tweetsChoreo.setQuery(searchText);

// Run the Choreo and store the results
TweetsResultSet tweetsResults = tweetsChoreo.run();

// Store results in a JSON object
searchResults = parseJSONObject(tweetsResults.getResponse());
}

void getTweetFromJSON() {
JSONArray statuses = searchResults.getJSONArray("statuses"); // Create a JSON array of the Twitter statuses in the object
JSONObject tweet = statuses.getJSONObject(0); // Grab the first tweet and put it in a JSON object
tweetText = tweet.getString("text"); // Pull the tweet text from tweet JSON object
}

void displayText() {
println(tweetText); // Print tweet to console

}

最佳答案

首先,不要尝试将文本存储在控制台中。控制台主要用于调试。

相反,请将文本存储在变量中。实际上您已经在 tweetText 变量中这样做了。

接下来,使用 ArrayLists 作为您的 positiveWordsmaleWords。这将使搜索它们变得更容易。

然后使用 split() 函数将 tweetText 分解为单个单词。检查这些单词中的每一个是否都在您的 ArrayLists 之一中。

把它们放在一起,可能看起来像这样:

void checkTweetText(){
boolean containsPositive = false;
boolean containsNegative = false;

String[] words = split(tweetText, " ");
for(String word : words){
if(positiveWords.contains(word)){
containsPositive = true;
}
if(negativeWords.contains(word)){
containsNegative = true;
}
}

if(containsPositive){
//do something
}
if(containsNegative){
//do something
}
}

请注意,您可能需要在拆分文本时涉及更多逻辑 - 您必须考虑标点符号等。

另请注意,这是一个非常广泛的问题。很难回答一般的“我该怎么做”类型的问题。回答诸如“我尝试了 X,预期是 Y,但得到了 Z”之类的问题要容易得多。尝试将您的问题分解为更小的步骤 - 您可以创建一个单独的草图来简单地打印出硬编码单词是好是坏?那么你可以对硬编码的句子做同样的事情吗?从小规模开始并逐步构建,而不是尝试一次承担整个项目。

关于javascript - 如何根据推文是否具有积极或消极情绪来更改处理中的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34054424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com