#e74c3c
Explore tagged Tumblr posts
Text
RCB vs RR: Royal Challengers Bengaluru vs Rajasthan Royals – Match Highlights
RCB vs RR: Royal Challengers Bengaluru vs Rajasthan Royals – Match Highlights RCB vs RR: Royal Challengers Bengaluru vs Rajasthan Royals – Match Highlights Date: April 22, 2025 | Venue: M. Chinnaswamy Stadium, Bengaluru | Toss: Rajasthan Royals won toss and chose to field Match Summary In a thrilling encounter at the M. Chinnaswamy Stadium, Royal Challengers Bengaluru (RCB) faced off against…

View On WordPress
#2c3e50#333#ddd#e74c3c#f2f2f2#f5f5f5#f9f9f9#ffd600#fffde7#rcb vs rr royal challengers bengaluru vs rajasthan royals match scorecard royal challengers vs royals fazalhaq farooqi royal challengers ben
0 notes
Text
耶和华以勒不是神的名字!
『耶和华以勒』是亚伯拉罕在神预备公羊代替以撒后,给那地方起的名字,而不是神的名字。这个名字的意思是"耶和华必预备",表达了神供应者的属性。我们要正确理解并使用这个称谓,避免误解和妄称。让我们一起追求对圣经更深入的理解。 | "Jehovah-jireh" was the name Abraham gave to the place where God provided a ram instead of Isaac for sacrifice, not a name of God itself. It me
创世记22:9-14 “他们到了神所指示的地方,亚伯拉罕在那里筑坛,把柴摆好,捆绑他的儿子以撒,放在坛的柴上。亚伯拉罕就伸手拿刀,要杀他的儿子。耶和华的使者从天上呼叫他说:’亚伯拉罕!亚伯拉罕!’他说:’我在这里。’天使说:’你不可在这童子身上下手。一点不可害他!现在我知道你是敬畏神的了;因为你没有将你的儿子,就是你独生的儿子,留下不给我。’亚伯拉罕举目观看,不料,有一只公羊,两角扣在稠密的小树中,亚伯拉罕就取了那只公羊来,献为燔祭,代替他的儿子。亚伯拉罕给那地方起名叫’耶和华以勒‘,直到今日人还说:’在耶和华的山上必有预备。'” 1. “耶和华以勒”���一个地名 在这段经文中清楚地表明,”耶和华以勒”是亚伯拉罕为纪念神奇妙供应而给那个地方起的名字,而不是神的名字。这个名字的含义是”耶和华必预备”,表达了神作为供应者的属性。 2.…
#2980b9#333#3498db#666#犹太传统#神的名字#神学理解#e74c3c#耶和华以勒#误解澄清#f5f6f7#f9f9f9#圣经#圣经研究#圣经解读#基督#基督教#希伯来文化#教会生活#敬畏神#亚伯拉罕#信仰
0 notes
Text
Self-Made Empire Legacy Challenge
Sims 4
(Still playtesting so there may be some changes)
Here's the Spicy Self-Made Empire Legacy Challenge
🎮 Required Packs for the Spicy Legacy Challenge
🛠️ Packs:
The Sims 4 Base Game
Get to Work (retail & career businesses)
City Living (food stalls, festivals)
Get Famous (celebrity & music studios)
Cottage Living (ranch, nectar making, Finchwick Fair)
Horse Ranch (horse ranch businesses & competitions)
Dream Home Decorator (art studios & galleries)
& more coming with the rest of the generations
⚙️ Optional Mods: • Basemental Drugs (illicit businesses) • Wicked Whims (romantic drama) • Life’s Drama (feuds & scandals) • Slice of Life (depth & emotional arcs)
Each generation includes: ✅ Standard Goals ✅ Optional Modded Goals ✅ Heir Goals ✅ Unique colors
🔥 Gen 1: The Ink-Stained Visionary
Color: 🧡 Burnt Sienna (#B46B3F) Aspiration: Painter Extraordinaire AND Fabulously Wealthy Traits: Creative, Ambitious, Romantic Business: Painting Studio (required) + optional second business (tattoo shop recommended)
This founder sets the tone for the generations to come. They’re a bold creative carving out their own empire. With nothing but talent, drive, and romantic chaos, they start from the bottom to build a business where their art defines them. Whether it's on canvas or inked on skin, their work leaves a legacy. The founder hates cooking and baking and must avoid these skills and activities throughout Gen 1. Food and kitchen drama are left for the next generation.
🎯 Goals:
Start with §0 and only a sketchpad or easel
Dislike Cooking
Open and run a Painting-focused business using the Business & Hobbies Expansion
(Optional) Open a second business — tattoo parlor recommended
Reach Local Legend status with your painting business
Earn at least §25k from your business
Complete both aspirations: Painter Extraordinaire 🎨 and Fabulously Wealthy 💰
Max the Painting skill
Max one additional creative or relevant skill of your choice (e.g. Handiness, Photography, Wellness, etc.)
Build a creative urban lot (gallery, tattoo loft, or rooftop studio)
👶 Heir Goals:
Heir must complete at least one aspiration related to creativity or business either as a teen or child
Must cook every meal for family when old enough
🍳 Gen 2: The Food Hustler
Color: 🍅 Spicy Red (#E74C3C) Aspiration: Master Chef / Curator Traits: Foodie, Perfectionist, Cheerful Business: Bakery (Get to Work) or Food Stall (City Living)
From stolen art to baked goods, this gen turns passion into profit by whipping up mouthwatering delights. They’re the heart and soul of the community’s favorite bakery — but with a spicy flair for drama and romance in the kitchen.
🎯 Goals:
Max Cooking 🍳 and Baking 🍰 skills
Use only homegrown or purchased ingredients
Win 3 Finchwick Fair ribbons (requires Cottage Living)
Earn at least §30k selling food
💻 Optional Mod Goals:
Sell infused or “special” edibles (Basemental)
Seduce food critics and customers (Wicked Whims)
Face sabotage from a jealous rival chef (Life’s Drama)
Suffer kitchen stress or anxiety breakdowns (Slice of Life)
👶 Heir Goals:
Have twins; heir bakes autonomously
One child must be from a secret or casual affair
Heir must master at least one cultural dish per expansion pack
🎭 Gen 3: The Fame-Hungry Twins
Color: 💜 Deep Plum (#9B59B6) Aspiration: World-Famous Celebrity / Musical Genius Traits: Self-Absorbed, Creative, Gloomy Business: Streaming Studio or Music Studio (Get Famous)
This generation’s drama is larger-than-life — two twins chasing fame in opposite ways. One becomes a glittering superstar, the other a dark, underground artist. Scandals and rivalries threaten to tear the family apart, but only one heir will carry the torch.
🎯 Goals:
Max Acting 🎬 and Media Production 🎧 skills
One twin becomes a 5-star celebrity
The other twin pursues underground or niche fame
A public scandal splits the siblings, ending the non-heir’s public presence
💻 Optional Mod Goals:
Sell secrets or influencer clout (Basemental)
Romance fans, agents, or rivals (Wicked Whims)
Engage in public feuds and media meltdowns (Life’s Drama)
Experience addiction, burnout, or mental health arcs (Slice of Life)
👶 Heir Goals:
Raise both twins with contrasting fame paths
Heir is chosen based on public reputation after scandal
Non-heir must be exiled, disowned, or go into hiding
🐴 Gen 4: The Wrangler
Color: 🐎 Earth Brown (#8E735B) Aspiration: Horse Rancher Traits: Family-Oriented, Loves Animals, Loyal Business: Horse Ranch & Wedding Venue (Horse Ranch)
From city lights to wide-open fields, this generation’s heart beats with hooves and harmony. Managing horses, training riders, and hosting barn weddings, they create a rustic empire — but hidden rivalries and forbidden romances add sparks to the stable.
🎯 Goals:
Max Riding 🐎 and Nectar Making 🍯 skills
Own and care for at least 3 horses
Host at least 1 wedding event on the ranch
Win 3 equestrian competitions
💻 Optional Mod Goals:
Sell illegal crops or substances on the side (Basemental)
Secret romance with ranch staff or rivals (Wicked Whims)
Rival ranch feud or sabotage (Life’s Drama)
Experience health issues like sunstroke or exhaustion (Slice of Life)
👶 Heir Goals:
Raise 1 biological and 1 adopted child
Heir is the child who wins the first horse event
Keep forbidden love children secret and hidden
Thanks for checking out the challenge! If you try it or have questions, feel free to message me. Reblogs are appreciated.
Part 2 (Gens 6–10) will be up soon.
-Mya
#the sims 4#video games#ts4 legacy#legacy challenge#sims legacy#sims 4 legacy#sims gameplay#sims 4 gameplay#sims 4 cc#the sims#the sims community#sims 4#my sims#sims community#SpicyLegacy#SelfMadeLegacy#Sims4Gameplay#Sims4Mods#Sims4Business#Sims4Aspirations#Sims4Traits#Sims4Pack#Sims4GetToWork#Sims4GetFamous#Sims4CottageLiving#Sims4HorseRanch#Sims4CityLiving#Sims4DreamHomeDecorator#Sims4WickedWhims#Sims4Basemental
7 notes
·
View notes
Text
In legal no-man’s land, refugees in Malaysia struggle to eat, pay rent
Kuala Lumpur, Malaysia – It is late afternoon in Kuala Lumpur and in the harsh heat, Zabi* concludes his third visit to the doctor in a month, still unsure of what is causing his excruciating stomach aches despite all his reports being normal so far.
He worries about paying for the doctor as, being a refugee, he does not have much money or any medical benefits.
.adtnl4-container { width: 100%; max-width: 100%; background-color: #34495e; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); margin: 20px auto; } .adtnl4-banner { width: 100%; max-height: 200px; overflow: hidden; } .adtnl4-banner img { width: 100%; height: auto; max-height: 200px; object-fit: cover; } .adtnl4-content { width: 100%; padding: 20px; box-sizing: border-box; text-align: left; font-family: 'Open Sans', sans-serif; color: #ecf0f1; background-color: #34495e; } .adtnl4-title a { font-size: 1.2em; font-weight: bold; margin-bottom: 10px; color: #fff; text-decoration: none; } .adtnl4-description { font-size: 1em; line-height: 1.6; color: #fff; margin-bottom: 15px; margin-top: 5px; } .adtnl4-learn-more-button { display: inline-block; padding: 10px 20px; font-size: 1em; font-weight: bold; text-decoration: none; background-color: #e74c3c; color: #fff; border-radius: 5px; transition: background-color 0.3s; } .adtnl4-learn-more-button:hover { background-color: #c0392b; } .adtnl4-marker a { font-size: 0.8em; color: #ccc; }
How to Get AdSense Approval Quickly a Personal Journey to Monetizing a Niche Blog
I will share my personal journey of getting AdSense approval quickly for my blog focused on the SME
Read Article
Ads by NSMEJ
When Zabi came from Afghanistan to Malaysia as a teenager five years ago, he had no choice but to fend for himself. His family had only enough money for one of them to flee.
“I know it’s illegal for a refugee to work in Malaysia. But I have no choice as an orphan, as I have no trace of my family at the moment. I work around 18 hours a day and I hardly get paid four ringgit ($0.88) an hour,” the 18-year-old told Al Jazeera.
Zabi is working as a housekeeper in a Malaysian-owned hotel in Kuala Lumpur but because he is a refugee and not officially allowed to work, he has no written contract.
He has had a series of other jobs – as a security guard, in restaurants and in customer service – and lives a precarious existence, struggling to make enough money to pay his 500 Malaysian ringgit ($106) monthly rent.
“After extremely exhausting long working days, Maggi instant noodles are something I eat most days,” he said.
Malaysia has no formal framework for refugees, which means they are left in a legal no-man’s land where they are vulnerable to exploitation by those who do employ them. Under Malaysian law, refugees are also no different to undocumented migrants who are often targeted in official crackdowns.
Asked about refugees at the United Nations last month, the Malaysian representative defended the government’s approach and indicated that there was no room for change.
“Who is the deserving refugee? Who is a deserving asylum seeker? Who is an economic migrant? Who is to determine them as such?” Foreign Affairs Ministry Deputy Secretary General (multilateral affairs) Bala Chandran Tharman told the Universal Periodic Review (UPR) in Geneva, according to the Malay Mail.
While Malaysia is a member of the UN, it has never signed the 1951 Refugee Convention and there are no laws (PDF) in place to recognise and provide for those fleeing persecution and conflict.
Refugees also have no right to work, attend school or access medical care.
Registration with the local office of the UN High Commissioner for Refugees (UNHCR) provides some measure of protection and support, including limited access to healthcare, education and other services provided by the UN and its partners.
“This is only an identity document and has no formal legal value in Malaysia,” the UNHCR website notes of the card given to all those registered with it.
In 2022, the Malaysian government said all asylum seekers and refugees would need to register under the government’s Tracking Refugees Information System (TRIS), which was launched in 2017.
The TRIS website talks about safety and the risk of social problems linked to the influx of refugees but suggests registration may allow cardholders to work in some, mostly unskilled, areas.
“The lack of legal protection forces refugees to work illegally, and most of the jobs that they find are 3D jobs, the ‘difficult, dangerous, and dirty’ kind of work that Malaysians try to avoid,” said Jana Stanfield, the co-founder of Together We Can Change the World and founder of the Refugee Film School in Kuala Lumpur.
Without legal protection and proper contracts, many do not receive Malaysia’s national minimum pay (introduced in May 2022) of 1,500 Malaysian ringgit ($329) per month or 7.21 Malaysian ringgit ($1.64) an hour.
Zabi, who spent five months learning English after arriving in Malaysia in 2018, says the boss at the security firm where he once worked had agreed to pay him about 1,000 Malaysian ringgit ($219) a month but never did.
Even now, he is forced to do overtime, which is unpaid, and work in other roles to meet his employer’s needs. He told Al Jazeera he has to agree to these conditions, having no alternative.
More than 70 percent of the 185,000 refugees in Malaysia registered with the refugee agency are of working age. According to information gathered from refugee communities, most make a living in restaurants, retail and other service jobs as well as agriculture and construction.
“It is a ‘win-win’ for Malaysia, as it would take into consideration both the humanitarian needs of refugees, whilst also benefiting the Malaysian economy as it recovers from the social and economic impact of the pandemic,” UNHCR spokeswoman Yante Ismail said in a statement to Al Jazeera about allowing the community to work legally.
Malaysia has allowed certain groups of refugees to join the workforce in the past.
In 2015, some Syrians were allowed to work and send their children to school under a scheme based on an initiative in the early 1990s for Bosnians fleeing the Balkan wars.
“Malaysia can allow refugees to exercise their right to work under an existing legal framework … and then this can be expanded to include education and healthcare,” said Mahi Ramakrishnan, an investigative filmmaker and activist based in Malaysia. “The question is whether the government has the political will to do so.”
In 2017, a pilot project allowed about 300 Rohingya refugees with UNHCR cards to work legally in the plantation and manufacturing sector, but was not adopted.
In October, the Human Resources Ministry said refugees might be allowed to work officially in the so-called “3D jobs” amid shortages of workers who are usually brought in through government-backed arrangements from countries such as Bangladesh and Indonesia. Those schemes are currently under review as Malaysian seeks to regularise its policies on foreign workers.
Ultimately, refugee advocacy groups say the government needs to take the lead on any policy change.
“To grant refugees the right to work is to ensure that they are able to have access to livelihood that is safe, decent and dignified,” Hui Ying Tham, the executive director at Asylum Access, told Al Jazeera. He stressed that the implementation of this “requires a multifaceted approach with the government leading, in consultation with refugee communities, the changes in laws, policies and attitudes to create a framework that recognises and supports the rights and potential of refugees.”
Tham added that work should also recognise the skills and experience of the individual refugees as it does with any other member of the workforce.
Abolfazly*, an Afghan refugee school teacher whose village was burned down by the Taliban, agreed.
“We had a life before taking refuge in another land,” he said. “We’re educated, we’re resourceful. Host countries like Malaysia can use us – not only in agriculture but in their socioeconomic development,” said the 28-year-old, who is working on finishing his PhD in law.
The UNHCR remains hopeful that there will eventually be a resolution, although the latest comments at the UPR suggest that might not happen soon.
For refugees like Zabi, that means continued struggle.
“I want to go to university. I love learning new languages,” he told Al Jazeera. “Right now, my life is all about eating, sleeping and working. I have no plans for the future because I know none of the plans will work. But I’ll still keep trying – like I always do.”
*Pseudonyms have been used to protect the refugees’ identity
.adtnl4-container { width: 100%; max-width: 100%; background-color: #34495e; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); margin: 20px auto; } .adtnl4-banner { width: 100%; max-height: 200px; overflow: hidden; } .adtnl4-banner img { width: 100%; height: auto; max-height: 200px; object-fit: cover; } .adtnl4-content { width: 100%; padding: 20px; box-sizing: border-box; text-align: left; font-family: 'Open Sans', sans-serif; color: #ecf0f1; background-color: #34495e; } .adtnl4-title a { font-size: 1.2em; font-weight: bold; margin-bottom: 10px; color: #fff; text-decoration: none; } .adtnl4-description { font-size: 1em; line-height: 1.6; color: #fff; margin-bottom: 15px; margin-top: 5px; } .adtnl4-learn-more-button { display: inline-block; padding: 10px 20px; font-size: 1em; font-weight: bold; text-decoration: none; background-color: #e74c3c; color: #fff; border-radius: 5px; transition: background-color 0.3s; } .adtnl4-learn-more-button:hover { background-color: #c0392b; } .adtnl4-marker a { font-size: 0.8em; color: #ccc; }
How to Get AdSense Approval Quickly a Personal Journey to Monetizing a Niche Blog
I will share my personal journey of getting AdSense approval quickly for my blog focused on the SME
Read Article
Ads by NSMEJ
2 notes
·
View notes
Text
# 《虹桥·侄儿娟艺术空间×成都之声》整合运营方案 ## 封面设计 **主视觉**: ▷ 三维拓扑结构融合轨道交通线网与声波图谱 ▷ 动态标题:"轨上声景——城市动脉的文化共振" **视觉元素**: - 左侧:虹桥枢纽抽象线条(#e74c3c 主色调) - 右侧:成都地标剪影流体动画(#27ae60 渐变色) --- ## 核心价值主张
mermaid pie title 价值构成比例 "文化基因解码器" : 35 "城市记忆再生站" : 28 "交通美学实验场" : 22 "社群共振发生器" : 15--- ## 空间功能规划 ### 三维空间矩阵(单位:㎡) | 区域 | 日间模式 | 夜间模式 | 可变装置 | |-------------|----------------|----------------|----------------| | 中央枢纽区 | 声音图书馆 | 全息剧场 | 升降式投影幕 | | 轨道长廊 | 交通文物展陈 | 光影跑道 | 可旋转展柜系统 | | 脉冲穹顶 | 自然光导入 | 星空投影 | 模块化吸音板 | | 胶囊工作站 | 文创市集 | 直播控制中心 | 磁悬浮移动模块 | --- ## 直播节目创新设计 ### 《声动脉搏》特别企划 **播出动线**: `19:30-20:30 每周五晚 | 双平台直播+AR同步` **环节矩阵**:
mermaid graph LR A[轨道音轨采样] --> B{即时混音引擎} B --> C[观众投票生成] C --> D((终极声景雕塑)) D --> E[NFT数字藏品]**技术支撑**: - 多声道空间音频系统(Dolby Atmos技术) - 轨道交通实时数据声效转化引擎 - 生物传感情绪可视化系统 --- ## 可持续运营模型 ### 三螺旋盈利架构
mermaid flowchart TB subgraph 内容生产 A[UGC声音银行] --> B(IP授权) B --> C[虚实联名商品] endsubgraph 空间运营 D[时段分割租赁] --> E{{70%日间公共性<br>30%夜间商业性}} end subgraph 数据资产 F[用户行为图谱] --> G[精准招商系统] end--- ## 视觉系统规范 **配色体系**: - 主色:#CB1E2C(轨道红) - 辅色:#009D9A(川江水绿) - 强调色:#FFC20E(信号灯黄) **动态元素**: 1. 章节过渡:列车进站动画(含报站音效) 2. 数据呈现:轨道网络生长可视化 3. 重点标注:探照灯聚焦效果(CSS动画) --- ## 执行时间轴
gantt dateFormat YYYY-MM-DD section 空间改造 硬件升级 :done, des1, 2025-04-01, 30d 智能系统部署 :active, des2, 2025-05-01, 45d section 内容孵化 在地文化挖掘 : des3, 2025-05-15, 60d 数字资产开发 : des4, 2025-06-01, 90d--- ## 封底设计 **核心slogan**: "让城市心跳在钢铁轨道上重新律动" **视觉元素**: - 动态二维码矩阵呈现合作方LOGO - 底部注脚:轨道交通文物保护单位联合认证标识
建议增强模块:
增加跨空间声场联动技术说明(需3D示意图)
补充应急播控系统架构图
植入成都地铁客流量实时数据仪表盘 是否需要针对特定模块进行深度扩展?
1 note
·
View note
Link
Is your garage filled with bad smells and dust? You need a good air purifier. The PuroAir Air Purifier claims to clean large spaces fast. This review will show how it works in a real garage. @charset "utf-8";.cg-box-layout-seven .cg-box-name:hover,.cg-btn,table[class*=cg-table-] tbody td a,table[class*=cg-table-] tbody td a:focus,table[class*=cg-table-] tbody td a:hovertext-decoration:none.cg-btn,.cg-choice-box-six .cg-cb-items .cg-tbl-rate-svg svg,.cg-slider .cg-slide,.cg-tbl-img img,.cg-tbl-rate-svg svg,atransition:none!important.cg-box-layout-four .cg-our-top-pick,.cg-choice-box-two .cg-cb-top-pickclip-path:polygon(0% 0%,0% 0%,100% 0%,100% 15%,100% 70%,85% 100%,85% 75%,15% 75%,15% 100%,0 70%);text-overflow:ellipsis;white-space:nowrap:root--cg-orange:#f39c12;--cg-carrot:#e67e22;--cg-red:#e74c3c;--cg-gray:#95a5a6;--cg-blue:#3498db;--cg-black:#2f3640;--cg-green:#27ae60;--cg-bluebell:#2b348e;--cg-bluedark:#1289A7;--cg-berry:#CA2C68;--cg-keppel:#AE7C5B;--cg-dupain:#148F77;--cg-darkorange:#F33B19;--cg-darknavy:#0f4c75;--cg-eggplant:#5a3d55;--cg-darkgreen:#438a5e;--cg-theme-color:#333details.cg-expand... PuroAir Air Purifier Review: Garage Tested & Approved
0 notes
Link
Is your garage filled with bad smells and dust? You need a good air purifier. The PuroAir Air Purifier claims to clean large spaces fast. This review will show how it works in a real garage. @charset "utf-8";.cg-box-layout-seven .cg-box-name:hover,.cg-btn,table[class*=cg-table-] tbody td a,table[class*=cg-table-] tbody td a:focus,table[class*=cg-table-] tbody td a:hovertext-decoration:none.cg-btn,.cg-choice-box-six .cg-cb-items .cg-tbl-rate-svg svg,.cg-slider .cg-slide,.cg-tbl-img img,.cg-tbl-rate-svg svg,atransition:none!important.cg-box-layout-four .cg-our-top-pick,.cg-choice-box-two .cg-cb-top-pickclip-path:polygon(0% 0%,0% 0%,100% 0%,100% 15%,100% 70%,85% 100%,85% 75%,15% 75%,15% 100%,0 70%);text-overflow:ellipsis;white-space:nowrap:root--cg-orange:#f39c12;--cg-carrot:#e67e22;--cg-red:#e74c3c;--cg-gray:#95a5a6;--cg-blue:#3498db;--cg-black:#2f3640;--cg-green:#27ae60;--cg-bluebell:#2b348e;--cg-bluedark:#1289A7;--cg-berry:#CA2C68;--cg-keppel:#AE7C5B;--cg-dupain:#148F77;--cg-darkorange:#F33B19;--cg-darknavy:#0f4c75;--cg-eggplant:#5a3d55;--cg-darkgreen:#438a5e;--cg-theme-color:#333details.cg-expand... PuroAir Air Purifier Review: Garage Tested & Approved
0 notes
Text
Task
This week’s assignment involves running a k-means cluster analysis. Cluster analysis is an unsupervised machine learning method that partitions the observations in a data set into a smaller set of clusters where each observation belongs to only one cluster. The goal of cluster analysis is to group, or cluster, observations into subsets based on their similarity of responses on multiple variables. Clustering variables should be primarily quantitative variables, but binary variables may also be included.
Your assignment is to run a k-means cluster analysis to identify subgroups of observations in your data set that have similar patterns of response on a set of clustering variables.
Data
This is perhaps the best known database to be found in the pattern recognition literature. Fisher's paper is a classic in the field and is referenced frequently to this day. (See Duda & Hart, for example.) The data set contains 3 classes of 50 instances each, where each class refers to a type of iris plant. One class is linearly separable from the other 2; the latter are NOT linearly separable from each other.
Predicted attribute: class of iris plant.
Attribute Information:
sepal length in cm
sepal width in cm
petal length in cm
petal width in cm
class:
Iris Setosa
Iris Versicolour
Iris Virginica
Results
A k-means cluster analysis was conducted to identify classes of iris plants based on their similarity of responses on 4 variables that represent characteristics of the each plant bud. Clustering variables included 4 quantitative variables such as: sepal length, sepal width, petal length, and petal width.
Data were randomly split into a training set that included 70% of the observations and a test set that included 30% of the observations. Then k-means cluster analyses was conducted on the training data specifying k=3 clusters (representing three classes: Iris Setosa, Iris Versicolour, Iris Virginica), using Euclidean distance.
To describe the performance of a classifier and see what types of errors our classifier is making a confusion matrix was created. The accuracy score is 0.82, which is quite good due to the small number of observation (n=150).
In [73]:import numpy as np import pandas as pd import matplotlib.pylab as plt from sklearn.model_selection import train_test_split from sklearn import datasets from sklearn.cluster import KMeans from sklearn.metrics import accuracy_score from sklearn.decomposition import PCA import seaborn as sns %matplotlib inline rnd_state = 3927
In [2]:iris = datasets.load_iris() data = pd.DataFrame(data= np.c_[iris['data'], iris['target']], columns= iris['feature_names'] + ['target']) data.head()
Out[2]:sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)target05.13.51.40.20.014.93.01.40.20.024.73.21.30.20.034.63.11.50.20.045.03.61.40.20.0
In [66]:data.info() <class 'pandas.core.frame.DataFrame'> RangeIndex: 150 entries, 0 to 149 Data columns (total 5 columns): sepal length (cm) 150 non-null float64 sepal width (cm) 150 non-null float64 petal length (cm) 150 non-null float64 petal width (cm) 150 non-null float64 target 150 non-null float64 dtypes: float64(5) memory usage: 5.9 KB
In [3]:data.describe()
Out[3]:sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)targetcount150.000000150.000000150.000000150.000000150.000000mean5.8433333.0540003.7586671.1986671.000000std0.8280660.4335941.7644200.7631610.819232min4.3000002.0000001.0000000.1000000.00000025%5.1000002.8000001.6000000.3000000.00000050%5.8000003.0000004.3500001.3000001.00000075%6.4000003.3000005.1000001.8000002.000000max7.9000004.4000006.9000002.5000002.000000
In [4]:pca_transformed = PCA(n_components=2).fit_transform(data.iloc[:, :4])
In [7]:colors=["#9b59b6", "#e74c3c", "#2ecc71"] plt.figure(figsize=(12,5)) plt.subplot(121) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", data.target))) plt.title('PCA on Iris data') plt.subplot(122) sns.countplot(data.target, palette=sns.color_palette(colors)) plt.title('Countplot Iris classes');
For visualization purposes, the number of dimensions was reduced to two by applying PCA analysis. The plot illustrates that classes 1 and 2 are not clearly divided. Countplot illustrates that our classes contain the same number of observations (n=50), so they are balanced.
In [85]:(predictors_train, predictors_test, target_train, target_test) = train_test_split(data.iloc[:, :4], data.target, test_size = .3, random_state = rnd_state)
In [86]:classifier = KMeans(n_clusters=3).fit(predictors_train) prediction = classifier.predict(predictors_test)
In [87]:pca_transformed = PCA(n_components=2).fit_transform(predictors_test)
Predicted classes 1 and 2 mismatch the real ones, so the code block below fixes that problem.
In [88]:prediction = np.where(prediction==1, 3, prediction) prediction = np.where(prediction==2, 1, prediction) prediction = np.where(prediction==3, 2, prediction)
In [91]:plt.figure(figsize=(12,5)) plt.subplot(121) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", target_test))) plt.title('PCA on Iris data, real classes'); plt.subplot(122) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", prediction))) plt.title('PCA on Iris data, predicted classes');
The figure shows that our simple classifier did a good job in identifing the classes, despite the few mistakes.
In [78]:clust_df = predictors_train.reset_index(level=[0]) clust_df.drop('index', axis=1, inplace=True) clust_df['cluster'] = classifier.labels_
In [79]:clust_df.head()
Out[79]:sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)cluster05.72.84.51.3015.62.74.21.3027.13.05.92.1236.53.05.82.2245.93.04.21.50
In [80]:print ('Clustering variable means by cluster') clust_df.groupby('cluster').mean() Clustering variable means by cluster
Out[80]:sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)cluster05.8590912.7909094.3431821.41590914.9897443.4256411.4717950.24871826.8863643.0909095.8545452.077273
In [92]:print('Confusion matrix:\n', pd.crosstab(target_test, prediction, colnames=['Actual'], rownames=['Predicted'], margins=True)) print('\nAccuracy: ', accuracy_score(target_test, prediction)) Confusion matrix: Actual 0 1 2 All Predicted 0.0 11 0 0 11 1.0 0 11 1 12 2.0 0 7 15 22 All 11 18 16 45 Accuracy: 0.8222222222222222
0 notes
Text
Changing SVG Colors with CSS: Vibrant Graphics

Introduction
Welcome to our exploration of the fascinating world of changing SVG colors with CSS. Scalable Vector Graphics (SVG) have become a cornerstone in modern web design, providing a versatile platform for creating vibrant and scalable graphics. In this blog post, we will delve into the techniques and methods that CSS offers to manipulate and enhance the colors of SVG elements, adding a new dimension to your web design toolbox. Whether you're a seasoned developer or just starting with web design, this guide will help you unlock the potential of CSS for creating visually stunning and dynamic SVG graphics.
Understanding SVG Colors

Scalable Vector Graphics (SVG) revolutionized web graphics by providing a format that is both scalable and resolution-independent. Central to the visual appeal of SVGs is their ability to showcase a wide range of colors. Let's delve into the intricacies of SVG colors and how CSS can be harnessed to manipulate them effectively. 1. Hexadecimal Color Codes: SVG supports the use of hexadecimal color codes to define colors. These codes represent a combination of six characters, including numbers 0-9 and letters A-F, providing a vast spectrum of color possibilities. For example, #FF5733 represents a vibrant shade of orange. 2. Named Colors: In addition to hexadecimal codes, SVG allows the use of named colors for simplicity and ease of use. Common names like blue, red, and green can be applied directly to SVG elements. 3. RGBA Color Model: SVG supports the RGBA color model, which stands for Red, Green, Blue, and Alpha. The alpha channel determines the transparency of the color, allowing for the creation of semi-transparent or fully opaque colors. For example, rgba(255, 0, 0, 0.5) represents a semi-transparent red. 4. Applying Gradients: One powerful way to enhance SVG graphics is by using gradients. Gradients allow for smooth color transitions within an element. CSS provides a straightforward syntax for defining linear or radial gradients, enabling the creation of visually appealing color blends. 5. Color Opacity: CSS enables the manipulation of color opacity through the use of the opacity property. This property can be applied to SVG elements to control their transparency, providing flexibility in achieving the desired visual effects. Understanding the nuances of SVG colors lays the foundation for creating eye-catching and dynamic graphics. By leveraging these color options and employing CSS techniques, you can breathe life into your SVG elements and elevate the overall visual experience of your web content.
Inline Styles for SVG
See the Pen SVG change Color by Toshitaka Niki (@toshitaka) on CodePen. Inline styles play a crucial role in defining the presentation of SVG elements directly within the markup. This method provides a quick and efficient way to apply styles without the need for external CSS files. Let's explore how inline styles can be employed to manipulate the colors of SVG graphics. 1. Style Attribute: SVG elements support the style attribute, where inline styles are declared. The style attribute can include various CSS properties, including those related to color such as fill and stroke. 2. Fill Property: The fill property is used to define the interior color of SVG elements, such as shapes and paths. By specifying a color value within the style attribute, you can instantly change the fill color of an SVG element. For example, style="fill: #3498db;" sets the fill color to a shade of blue. 3. Stroke Property: For elements with an outline or border, the stroke property controls the color of the outline. Similar to the fill property, you can apply the stroke property directly within the style attribute. For instance, style="stroke: #e74c3c;" sets the outline color to a vibrant red. 4. Inline Styles with Gradients: Inline styles can also be used to apply gradients directly to SVG elements. By combining the fill property with gradient definitions, you can achieve complex and visually appealing color transitions within the SVG graphic. 5. Pros and Cons: While inline styles offer simplicity and quick application, it's essential to consider their impact on maintainability, especially in larger projects. Using external CSS files may provide a more organized and scalable approach, separating style from structure. In conclusion, leveraging inline styles for SVG elements allows for immediate and targeted color changes directly within the markup. Whether you're fine-tuning individual elements or prototyping a design, understanding how to apply inline styles effectively is a valuable skill in creating vibrant and dynamic SVG graphics.
CSS Classes and SVG
Utilizing CSS classes is a powerful and organized way to apply styles consistently across SVG elements. This approach promotes maintainability, reusability, and a cleaner separation of concerns. Let's explore how CSS classes can be effectively employed to style SVG graphics. 1. Class Attribute: SVG elements support the class attribute, allowing you to assign one or more classes to an element. By defining styles in CSS for these classes, you can ensure a uniform look and feel for multiple SVG elements. 2. Centralized Styling: Creating a CSS class for SVG elements centralizes styling information. This means that changes made to the class definition automatically reflect across all elements with that class, streamlining the maintenance process. 3. Reusability: CSS classes promote the reuse of styles. Once a class is defined, it can be applied to multiple SVG elements throughout your document or across various pages, ensuring a consistent design language. 4. Specificity and Inheritance: CSS classes allow you to control the specificity of styles, determining which styles take precedence. Additionally, inheritance principles apply, enabling child elements to inherit styles from their parent elements, providing a hierarchical and organized structure. 5. Class Naming Conventions: Adopting meaningful and consistent naming conventions for CSS classes enhances code readability and maintenance. Consider using names that reflect the purpose or visual characteristics of the styles, making it easier for yourself and other developers to understand the code. 6. Applying Multiple Classes: SVG elements can have multiple classes, enabling the combination of different styles. This flexibility allows for intricate and varied designs while maintaining a modular and scalable structure. 7. Pros and Cons: While CSS classes offer many advantages, it's crucial to strike a balance. Overuse of classes can lead to unnecessary complexity. Evaluate the scope and scale of your project to determine the most efficient way to manage styles. In summary, CSS classes provide a systematic and efficient approach to styling SVG graphics. By incorporating classes into your SVG design workflow, you can achieve a harmonized visual identity, improve maintainability, and streamline the styling process across your web projects.
Gradients in SVG
Gradients are a powerful tool in the world of Scalable Vector Graphics (SVG), enabling the creation of smooth color transitions and adding depth to your visuals. CSS provides a straightforward way to implement gradients in SVG, enhancing the overall aesthetic appeal of your graphics. 1. Linear Gradients: Linear gradients create a gradual transition of color along a straight line. In SVG, you can specify the starting and ending points of the gradient, as well as the colors and stops along the way. This technique is particularly useful for creating horizontal, vertical, or diagonal color blends within SVG elements. 2. Radial Gradients: Radial gradients radiate outward from a central point, allowing for circular or elliptical color transitions. By defining the gradient's center, focal point, and radius, you can achieve visually interesting effects. Radial gradients are excellent for creating highlights and shadows in SVG graphics. 3. Gradient Stops: Gradients consist of color stops, indicating where the color transition occurs. Each stop specifies a color and a position along the gradient line. This level of control allows for precise manipulation of how colors blend within the SVG element. 4. Adding Transparency: Gradients in SVG can include transparent colors, adding an extra layer of complexity to your graphics. By adjusting the alpha channel (opacity) of gradient stops, you can create subtle fades or entirely transparent sections, offering versatility in design. 5. Multiple Color Stops: SVG gradients support multiple color stops, allowing you to create intricate and multi-colored transitions. This feature is particularly beneficial when designing backgrounds, patterns, or complex graphics with varying shades and hues. 6. Applying Gradients to Elements: Gradients can be applied to various SVG elements, such as shapes, paths, and text. By utilizing CSS properties like fill and stroke, you can seamlessly integrate gradients into your SVG graphics, enhancing their visual impact. ColorPositionBlue0%Red100% Implementing gradients in SVG not only adds visual appeal but also provides a powerful tool for expressing creativity in web design. Experiment with different gradient types, color combinations, and transparency levels to discover the full potential of gradients in your SVG graphics.
Filter Effects for SVG
Filter effects in SVG, powered by CSS, open up a world of possibilities for enhancing and manipulating the appearance of SVG graphics. These effects allow you to apply transformations, blurs, and color adjustments, adding depth and creativity to your visual content. 1. The filter Property: The filter property is the gateway to applying filter effects to SVG elements. By assigning a filter value to this property, you can specify the type and parameters of the desired effect. For example, filter: url(#blur) applies a blur effect defined in an SVG filter element. 2. Common Filter Effects: SVG supports a variety of filter effects, including blur, grayscale, sepia, brightness, and contrast. These effects can be combined and adjusted to achieve unique and visually striking results. 3. Combining Filters: Filters can be combined by chaining multiple filter functions together. This allows for the creation of complex visual effects, such as a combination of blur, saturation, and brightness adjustments to achieve a specific look and feel. 4. SVG Filter Elements: Filters are defined using SVG filter elements within the defs section of your SVG document. These filter elements encapsulate the parameters and settings for specific filter effects. Referencing these filters through the filter property brings them to life in your SVG graphics. 5. Dynamic Animation: Filter effects can be animated using CSS animations, adding dynamic visual changes to your SVG elements. This opens up possibilities for creating interactive and engaging user experiences with responsive filter transitions. Filter TypeParametersBlurStandard Deviation: 5SepiaIntensity: 70% 6. Performance Considerations: While filter effects bring creativity to SVG graphics, it's essential to consider their impact on performance, especially on lower-powered devices. Optimize and test your filters to ensure a smooth user experience. Filter effects in SVG provide a versatile toolkit for designers and developers to elevate the visual appeal of graphics. Experimenting with different filter combinations and animations allows you to unleash your creativity and craft visually stunning SVG elements.
Responsive Color Changes
Creating a visually appealing and responsive user interface involves adapting to various screen sizes and devices. Responsive color changes in SVG graphics play a vital role in optimizing the user experience. Let's explore how CSS techniques can be applied to achieve responsive color adjustments in SVG elements. 1. Media Queries: Media queries are a cornerstone of responsive design, allowing you to apply specific styles based on the characteristics of the user's device. By combining media queries with CSS for SVG elements, you can define different color schemes tailored to various screen sizes, resolutions, or orientations. 2. Viewport Units: Utilizing viewport units, such as vw (viewport width) and vh (viewport height), enables relative sizing based on the dimensions of the user's viewport. Applying these units to SVG color properties ensures that color changes respond proportionally to the screen size. 3. Fluid Color Transitions: Implementing fluid color transitions in SVG graphics enhances the responsiveness of your design. By utilizing CSS transitions or animations, you can smoothly change colors based on user interactions, viewport adjustments, or device orientation changes. 4. Color Contrast for Accessibility: Consideration for accessibility is crucial in responsive design. Ensure that color changes maintain sufficient contrast, making content readable for users with varying visual abilities. CSS techniques, such as adjusting the luminance or saturation, can help achieve accessible color contrasts. 5. Device-Specific Color Profiles: Tailor color profiles for specific devices or platforms to create a consistent and visually pleasing experience. This may involve adjusting colors to match the characteristics of different screens, such as those on mobile devices, tablets, or desktop monitors. Viewport WidthColor50vwBlue100vwRed 6. Testing Across Devices: To ensure the effectiveness of responsive color changes, testing across various devices and screen sizes is crucial. Emulators, simulators, or real device testing can help identify and address any color-related issues in different contexts. Responsive color changes in SVG graphics contribute to a seamless and visually pleasing user experience. By implementing these techniques, you can create designs that not only adapt to diverse devices but also enhance the overall aesthetic appeal of your web content.
Animation and Color Transformation
Adding animation to SVG graphics introduces a dynamic dimension to web design, captivating users and conveying information in engaging ways. Color transformation, as a subset of SVG animation, allows for the seamless transition between different colors, creating visually stunning effects. Let's explore the techniques and possibilities of animating color transformations in SVG. 1. CSS Animations: CSS animations provide a straightforward way to bring SVG graphics to life. By defining keyframes and specifying color changes at different points in the animation, you can create smooth and eye-catching color transitions. This approach is particularly effective for highlighting specific elements or guiding user attention. 2. Color Transition Libraries: Leveraging JavaScript libraries, such as Anime.js or GreenSock Animation Platform (GSAP), enhances the complexity and control of color transformations. These libraries offer a wide range of options, including easing functions, delays, and callbacks, enabling precise and intricate color animations in SVG graphics. 3. Hue Rotation: The CSS hue-rotate filter allows for the dynamic rotation of colors within an SVG element. By animating the hue rotation property, you can create mesmerizing color transformations. This technique is particularly effective for creating visually appealing loading spinners or transitioning backgrounds. 4. Saturation and Lightness: Animating the saturation and lightness properties through CSS or JavaScript enables the transformation between vibrant and muted colors, as well as adjusting the overall brightness of SVG graphics. This can be used for transitioning between day and night modes or creating atmospheric effects. 5. Color Looping: Implementing color looping animations involves seamlessly cycling through a set of colors. This technique is often used for decorative elements, branding animations, or simply to add a playful touch to SVG graphics. CSS animations or JavaScript can be employed to achieve this effect. DegreeColor0Blue180Red 6. Accessibility Considerations: When incorporating color transformations, it's essential to consider accessibility. Ensure that the color changes maintain sufficient contrast and are easily distinguishable for all users, including those with visual impairments. Animation and color transformation in SVG graphics offer a creative outlet for designers and developers. By exploring these techniques, you can craft visually dynamic and interactive web content that leaves a lasting impression on your audience.
FAQ
Explore common questions and answers related to changing SVG colors with CSS. If you have queries about the techniques, compatibility, or best practices, you might find the information you need below. Q: Can I apply CSS styles directly to SVG elements? A: Yes, inline styles using the style attribute can be applied directly to SVG elements. This allows for quick and specific color changes within the SVG markup. Q: Are there advantages to using CSS classes for styling SVG graphics? A: Absolutely. CSS classes provide a systematic and organized way to apply styles consistently across multiple SVG elements. This promotes reusability, maintainability, and a cleaner separation of concerns. Read the full article
0 notes
Text
Running a k-means Cluster Analysis
Task
This week’s assignment involves running a k-means cluster analysis. Cluster analysis is an unsupervised machine learning method that partitions the observations in a data set into a smaller set of clusters where each observation belongs to only one cluster. The goal of cluster analysis is to group, or cluster, observations into subsets based on their similarity of responses on multiple variables. Clustering variables should be primarily quantitative variables, but binary variables may also be included.
Your assignment is to run a k-means cluster analysis to identify subgroups of observations in your data set that have similar patterns of response on a set of clustering variables.
Data
This is perhaps the best known database to be found in the pattern recognition literature. Fisher's paper is a classic in the field and is referenced frequently to this day. (See Duda & Hart, for example.) The data set contains 3 classes of 50 instances each, where each class refers to a type of iris plant. One class is linearly separable from the other 2; the latter are NOT linearly separable from each other.
Predicted attribute: class of iris plant.
Attribute Information:
sepal length in cm
sepal width in cm
petal length in cm
petal width in cm
class:
Iris Setosa
Iris Versicolour
Iris Virginica
Results
A k-means cluster analysis was conducted to identify classes of iris plants based on their similarity of responses on 4 variables that represent characteristics of the each plant bud. Clustering variables included 4 quantitative variables such as: sepal length, sepal width, petal length, and petal width.
Data were randomly split into a training set that included 70% of the observations and a test set that included 30% of the observations. Then k-means cluster analyses was conducted on the training data specifying k=3 clusters (representing three classes: Iris Setosa, Iris Versicolour, Iris Virginica), using Euclidean distance.
To describe the performance of a classifier and see what types of errors our classifier is making a confusion matrix was created. The accuracy score is 0.82, which is quite good due to the small number of observation (n=150).
Code:
import numpy as np
import pandas as pd
import matplotlib.pylab as plt
from sklearn.model_selection import train_test_split
from sklearn import datasets
from sklearn.cluster import KMeans
from sklearn.metrics import accuracy_score
from sklearn.decomposition import PCA
import seaborn as sns
%matplotlib inline
rnd_state = 3927
iris = datasets.load_iris() data = pd.DataFrame(data= np.c_[iris['data'], iris['target']], columns= iris['feature_names'] + ['target'])
data.head()
Output:
data.info()
Output:
data.describe()
Output:
pca_transformed = PCA(n_components=2).fit_transform(data.iloc[:, :4])
colors=["#9b59b6", "#e74c3c", "#2ecc71"] plt.figure(figsize=(12,5)) plt.subplot(121) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", data.target))) plt.title('PCA on Iris data') plt.subplot(122) sns.countplot(data.target, palette=sns.color_palette(colors)) plt.title('Countplot Iris classes');
Output:
For visualization purposes, the number of dimensions was reduced to two by applying PCA analysis. The plot illustrates that classes 1 and 2 are not clearly divided. Countplot illustrates that our classes contain the same number of observations (n=50), so they are balanced.
(predictors_train, predictors_test, target_train, target_test) = train_test_split(data.iloc[:, :4], data.target, test_size = .3, random_state = rnd_state)
classifier = KMeans(n_clusters=3).fit(predictors_train) prediction = classifier.predict(predictors_test)
pca_transformed = PCA(n_components=2).fit_transform(predictors_test)
prediction = np.where(prediction==1, 3, prediction)
prediction = np.where(prediction==2, 1, prediction) prediction = np.where(prediction==3, 2, prediction)
plt.figure(figsize=(12,5)) plt.subplot(121) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", target_test))) plt.title('PCA on Iris data, real classes'); plt.subplot(122) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", prediction))) plt.title('PCA on Iris data, predicted classes');
Output:
clust_df = predictors_train.reset_index(level=[0]) clust_df.drop('index', axis=1, inplace=True) clust_df['cluster'] = classifier.labels_
clust_df.head()
Output:
print ('Clustering variable means by cluster') clust_df.groupby('cluster').mean()
Clustering variable means by cluster
Output:
print('Confusion matrix:\n', pd.crosstab(target_test, prediction, colnames=['Actual'], rownames=['Predicted'], margins=True)) print('\nAccuracy: ', accuracy_score(target_test, prediction))
Output:
Thanks For Reading!
0 notes
Text
Le nouveau single de Vladimir Déribert ne vous laissera pas indifférent Vladimir Joseph Eustache DERIBERT est connu pour sa passion pour la musique chrétienne et a eu l'occasion de collaborer avec des groupes renommés tels que Jimla Gospel, Halleluyah Gospel, On The Rock Mass Choir et Hosanna Worship Team. Il est également un talentueux auteur-compositeur et son nouveau single « Chantons-le » est une composition inspirée par Dieu en 2023, fondée sur le psaume 150:6. Ce chant transmet deux messages principaux : « Chantons à l'Éternel un cantique nouveau » et « Poussons des cris de joie, car JÉSUS est notre roi ». Ces messages s'adressent à tous, mais ont une signification particulière pour les chrétiens du monde entier. Préparez-vous à être béni par cette nouvelle chanson de Vladimir Déribert qui souhaite partager sa foi et sa passion pour la musique chrétienne avec le plus grand nombre de personnes possible. .IRPP_button , .IRPP_button .postImageUrl , .IRPP_button .centered-text-area { min-height: 86px; position: relative; } .IRPP_button , .IRPP_button:hover , .IRPP_button:visited , .IRPP_button:active { border:0!important; } .IRPP_button { display: block; transition: background-color 250ms; webkit-transition: background-color 250ms; width: 100%; opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; background-color: #141414; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.17); -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.17); -o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.17); -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.17); } .IRPP_button:active , .IRPP_button:hover { opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; } .IRPP_button .postImageUrl { background-position: center; background-size: cover; float: right; margin: 0; padding: 0; width: 30%; } .IRPP_button .centered-text-area { float: left; width: 70%; padding:0; margin:0; } .IRPP_button .ctaText { border-bottom: 0 solid #fff; color: #FFFFFF; font-size: 13px; font-weight: bold; margin: 0; padding: 0; } .IRPP_button .postTitle { color: #ECF0F1; font-size: 16px; font-weight: 600; margin: 0; padding: 0; width: 80%;display: inline-block;float: right; } .IRPP_button .ctaButton { background: #C0392B; color: #FFFFFF; border: none; border-radius: 3px; box-shadow: none; font-size: 14px; font-weight: bold; line-height: 26px; margin: 18px 14px 18px 14px; moz-border-radius: 3px; padding: 12px 0; text-align: center; text-decoration: none; text-shadow: none; webkit-border-radius: 3px; position: absolute;float: left;padding: 5px 3%;width: auto;left: 0;top: 8px; } .IRPP_button:hover .ctaButton { background: #E74C3C; } .IRPP_button .centered-text { display: table; height: 86px; padding:0; margin:0; padding-left: 0px!important; top: 0;width: 100%; } .IRPP_button .IRPP_button-content { display: table-cell; margin: 0; padding: 0; padding-right: 10px; position: relative; vertical-align: middle; width: 100%; } .IRPP_button:after { content: ""; display: block; clear: both; } Mesi - Vladimir Déribert (Video)> Sa musique, empreinte de spiritualité, touchera les cœurs et suscitera des émotions profondes. Êtes-vous avides de messages inspirants et de mélodies puissantes ? Vladimir vous promet une satisfaction totale. L'artiste possède une voix exceptionnelle et sa capacité à transmettre son amour pour Dieu à travers sa musique en fait un remarquable artiste de la scène gospel. Ne manquez pas la sortie du nouveau single de Vladimir Joseph Eustache DERIBERT ce samedi 16 septembre 2023 sur toutes les plateformes de streaming, en particulier sur les réseaux de BGospel Magazine. Vladimir est parmi les artistes chrétiens qui continuent de nous émerveiller par leurs voix divines et leur musique remplie de foi. Soyez prêts à être submergés par les émotions et à être bénis par cette nouvelle œuvre musicale qui touchera les cœurs. #gospel #music #worship #praise #news #musique #évangélique #actualités #bgospelmagazine #bgospel
0 notes
Text
assignment-2
Data
The dataset is related to red variants of the Portuguese "Vinho Verde" wine. Due to privacy and logistic issues, only physicochemical (inputs) and sensory (the output) variables are available (e.g. there is no data about grape types, wine brand, wine selling price, etc.).
The classes are ordered and not balanced (e.g. there are munch more normal wines than excellent or poor ones). Outlier detection algorithms could be used to detect the few excellent or poor wines. Also, we are not sure if all input variables are relevant. So it could be interesting to test feature selection methods.
import pandas as pdimport numpy as npimport matplotlib.pylab as pltfrom sklearn.model_selection import train_test_split, cross_val_scorefrom sklearn.ensemble import RandomForestClassifier, ExtraTreesClassifierfrom sklearn.manifold import MDSfrom sklearn.metrics.pairwise import pairwise_distancesfrom sklearn.metrics import accuracy_scoreimport seaborn as sns%matplotlib inline rnd_state = 4536
1 note
·
View note
Text
#69289C | STRAY KIDS MASTERLIST.
for easier access to all my works!
bolded or ♡ = personal favorite

#418848 | OT8, MULTIPLE
for my love, sincerely, for you / 32k+
ribs / 10.4k+
there was ths boy / 13.2k+ / ♡
the sound monster / 10.5k+

#17202A | BANG CHAN
#8A4961 ; #4E92B1 ; #150036
where the train never stops / 14.1k+ / ♡

#6C3483 | LEE MINHO
#890E0A ; #DEB9DD ; #1218A0 ; #A67D8F ; #788587
who you are, who i am / pt.1 / pt.2 / pt.3 / 52k+

#0E6655 | SEO CHANGBIN

#F9E79F | HWANG HYUNJIN
#372064 ; #F7E7CE ; #CC1100 ; #006DB0 ; #4148F1 ; #3E474B ; #67509E ; #507A9E ; #917E84 ; #6B7194 ; #D12E3E ; #9D00FF
half-dead romance / 10.2k+ / ♡
drunken with a sense of love / 7.1k+
good old goryeo / pt.1 / pt.2

#E74C3C | HAN JISUNG
#A1123B ; #00873E ; #779ED9 ; #E64C75 ; #17E8D3 ; #FF7D86
celestial strings / pt.1 / pt.2 / pt.3 / 75.5k+ / ♡
the happiest / 19.2k+

#17202A | LEE FELIX
#FFF81C ; #FFC844 ; #807B36 ; #59091D ; #FBB2F3 ; #29828A ;
the teenage love book / 7.3k+

#AED6F1 | KIM SEUNGMIN
#7CA85F ; #F6DDCC ; #FFE5B4 ; #ACEDAD ; #4C00FF ; #FFF6E8

#F6DDCC | YANG JEONGIN
#FDD7EA ; #ECECBE ; #F28500 ; #C4CFFF
deshita / 25.1k+

#FFFFFF | UNIVERSES
whisker’s red / hwang hyunjin
the classified investigation unit / ot8
332 notes
·
View notes
Text
Families of detained Palestinian Americans decry US government’s silence
Washington, DC – “Confirmed receipt.” That is the only message Yasmeen Elagha received from the United States government after two of her cousins — both Palestinian Americans — were detained by Israeli forces as they sheltered near Khan Younis in southern Gaza.
Now, she is calling on the administration of US President Joe Biden to do more to assure their safety and secure their release. Elagha said her two cousins, 18-year-old Borak Alagha and 20-year-old Hashem Alagha, are being held without charge.
.adtnl4-container { width: 100%; max-width: 100%; background-color: #34495e; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); margin: 20px auto; } .adtnl4-banner { width: 100%; max-height: 200px; overflow: hidden; } .adtnl4-banner img { width: 100%; height: auto; max-height: 200px; object-fit: cover; } .adtnl4-content { width: 100%; padding: 20px; box-sizing: border-box; text-align: left; font-family: 'Open Sans', sans-serif; color: #ecf0f1; background-color: #34495e; } .adtnl4-title a { font-size: 1.2em; font-weight: bold; margin-bottom: 10px; color: #fff; text-decoration: none; } .adtnl4-description { font-size: 1em; line-height: 1.6; color: #fff; margin-bottom: 15px; margin-top: 5px; } .adtnl4-learn-more-button { display: inline-block; padding: 10px 20px; font-size: 1em; font-weight: bold; text-decoration: none; background-color: #e74c3c; color: #fff; border-radius: 5px; transition: background-color 0.3s; } .adtnl4-learn-more-button:hover { background-color: #c0392b; } .adtnl4-marker a { font-size: 0.8em; color: #ccc; }
How to Get AdSense Approval Quickly a Personal Journey to Monetizing a Niche Blog
I will share my personal journey of getting AdSense approval quickly for my blog focused on the SME
Read Article
Ads by NSMEJ
“We’ve pleaded with the US government,” Elagha, a law student at Northwestern University in Chicago, explained. “The administration is fully failing in its duty.”
Hers is one of several families pushing for the protection of Palestinian Americans taken into Israeli custody, as the war on Gaza stretches on. They gathered in Washington, DC, for a news conference on Monday to press for action.
From the podium, Elagha explained that she learned of her cousins’ abduction in a February 7 phone call with her aunt in Gaza. Through tears, her aunt recounted how Israeli soldiers broke into their shelter in al-Mowasi, near Khan Younis, and tied up the women and children.
The men met a different fate. Elagha’s aunt described how the two cousins, along with their father, their uncle and two other male relatives were all taken away. The soldiers left the shelter trashed and the family’s car tyres slashed, according to Elagha’s aunt. None of the men have been heard from since.
In the days since, Elagha has sent a flurry of emails, to US embassies in Jerusalem, Tel Aviv and Cairo, as well as a US task force on Gaza. She has received only the one reply confirming her appeal had been received.
The wait for information has been excruciating, she said. “The minutes feel like hours, so it feels like it’s been already a month since they’ve been gone.”
Suliman Hamed, a Louisiana resident, shared a similar experience at the event, hosted by the Council on American-Islamic Relations (CAIR).
He said his Palestinian American mother, 46-year-old Samaher Esmail, was taken into Israeli custody in the occupied West Bank last Monday, and he has not been able to speak with her since.
He explained he has only received one call from an embassy official in the aftermath of her detention. Days have passed, but still, consular staff have not visited her where she is being held at the Damon prison in Haifa, Hamed explained.
“Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday and now Monday again. Nobody from the US embassy has visited or spoken with my mother, a US citizen,” he said.
While she waits in prison, Hamed worries about his mother’s health. Her lawyer told him that she has not received her medication since she was arrested.
“It’s been seven days and she still has not received a single medication. This has resulted in her condition worsening greatly,” Hamad said. “We have repeatedly asked the US embassy to send a consular officer to my mom, so we can get an update on her condition.”
His mother was arrested on allegations of “incitement on social media”, he explained. Hamed and his brother Ibrahim fear she was targeted in retaliation for a lawsuit she filed against the Israeli military, after allegedly being beaten during a traffic stop in 2022.
Rights groups have long accused Israeli authorities of using trumped-up charges of “incitement” to crack down on Palestinians and suppress free speech.
But arrests overall in the occupied West Bank have surged since the start of the war on October 7. The Palestinian Prisoners Club, an advocacy organisation, has documented 6,870 detentions as of last week.
“Israel is trying to use my mother as an example,” said Hamed. “They’re trying to scare Palestinians and Palestinian Americans. If this can happen to a Palestinian American woman, this could happen to you.”
Since the start of the war in Gaza on October 7, allegations of enforced disappearances, abuses and torture at the hands of Israeli forces have also been rampant.
In January, Ajith Sunghay, the head of the United Nations Human Rights office for the occupied Palestinian territories, published a report where he collected accounts of detainees being “beaten, humiliated, subjected to ill-treatment and to what may amount to torture”.
Many were held between 35 and 55 days, Sunghay wrote. His report, and others, have sparked fears among the families of those in custody.
“With everything we’ve learned happens to Palestinian men when they’re detained by Israel, especially since October 7, we’re just imagining the torture that they are facing,” Elagha said of her cousins.
Hamed, meanwhile, recalled how his mother’s lawyer described bruises on her arms and back. He and his brother believe she was beaten by Israeli forces. The lawyer told them that Esmail even lost consciousness twice during a prison interview.
When asked about the US citizens detained overseas, the State Department said it is working to ensure their fair and humane treatment.
“As you know, we have no higher priority than the safety and security of American citizens overseas,” spokesman Vedant Patel told reporters on February 8.
But Maria Kari, an immigration lawyer, told Al Jazeera the State Department’s stance does not go far enough. She is working with the family of Borak and Hashem Alagha to file a lawsuit against the government.
She told Al Jazeera the Biden administration appears to have not followed the proper protocol for situations where a US citizen is taken hostage or forcibly disappeared, either by a non-state or state actor.
“Here, we have Israeli soldiers having wrongly detained [the Alagha siblings] in an enforced disappearance, all very illegal and in direct contravention of both domestic US laws and international laws,” she said.
That situation should “require consular access right away”, she explained. “The president’s supposed to be engaged. The State Department’s supposed to be coordinating all of these teams.”
“And none of that has happened here,” she added, “which is appalling.”
The State Department did not respond to a request for comment from Al Jazeera about the cases.
Suliman and Ibrahim Hamed said the lack of response they received left them feeling “brushed over”. At Monday’s news conference, they called on the US to reconsider its unwavering support for Israel, as allegations of human rights abuses in Gaza and the West Bank continue to mount.
The brothers are from Gretna, Louisiana — a city already scarred by the violence. Theirs is the same hometown as Tawfiq Ajaq, a 17-year-old Palestinian American who was killed in a January shooting involving an Israeli settler and an off-duty police officer in the occupied West Bank.
The Hamed siblings questioned whether the US’s backing of Israel is denying their community justice.
“We, as taxpaying Americans, are funding this imprisonment of not just my mother but of innocent people, especially the Palestinians,” said Ibrahim.
“If we were white Christian or Israeli Americans, would the embassy have responded sooner?” Suliman added. “This is the question I have asked myself on a daily basis.”
.adtnl4-container { width: 100%; max-width: 100%; background-color: #34495e; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); margin: 20px auto; } .adtnl4-banner { width: 100%; max-height: 200px; overflow: hidden; } .adtnl4-banner img { width: 100%; height: auto; max-height: 200px; object-fit: cover; } .adtnl4-content { width: 100%; padding: 20px; box-sizing: border-box; text-align: left; font-family: 'Open Sans', sans-serif; color: #ecf0f1; background-color: #34495e; } .adtnl4-title a { font-size: 1.2em; font-weight: bold; margin-bottom: 10px; color: #fff; text-decoration: none; } .adtnl4-description { font-size: 1em; line-height: 1.6; color: #fff; margin-bottom: 15px; margin-top: 5px; } .adtnl4-learn-more-button { display: inline-block; padding: 10px 20px; font-size: 1em; font-weight: bold; text-decoration: none; background-color: #e74c3c; color: #fff; border-radius: 5px; transition: background-color 0.3s; } .adtnl4-learn-more-button:hover { background-color: #c0392b; } .adtnl4-marker a { font-size: 0.8em; color: #ccc; }
How to Get AdSense Approval Quickly a Personal Journey to Monetizing a Niche Blog
I will share my personal journey of getting AdSense approval quickly for my blog focused on the SME
Read Article
Ads by NSMEJ
0 notes
Text
K-Means Cluster Analysis
Code
import pandas as pd import matplotlib.pylab as plt from sklearn.model_selection import train_test_split from sklearn import datasets from sklearn.cluster import KMeans from sklearn.metrics import accuracy_score from sklearn.decomposition import PCA import seaborn as sns %matplotlib inline rnd_state = 3927
Data
<class 'pandas.core.frame.DataFrame'> RangeIndex: 150 entries, 0 to 149 Data columns (total 5 columns): sepal length (cm) 150 non-null float64 sepal width (cm) 150 non-null float64 petal length (cm) 150 non-null float64 petal width (cm) 150 non-null float64 target 150 non-null float64 dtypes: float64(5) memory usage: 5.9 KB
Iris Data
Simple Classifier
plt.figure(figsize=(12,5)) plt.subplot(121) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", target_test))) plt.title('PCA on Iris data, real classes'); plt.subplot(122) plt.scatter(list(map(lambda tup: tup[0], pca_transformed)), list(map(lambda tup: tup[1], pca_transformed)), c=list(map(lambda col: "#9b59b6" if col==0 else "#e74c3c" if col==1 else "#2ecc71", prediction))) plt.title('PCA on Iris data, predicted classes');
Simple Classifier Graph
Result
A k-means cluster analysis was conducted to identify classes of iris plants based on their similarity of responses on 4 variables that represent characteristics of the each plant bud. Clustering variables included 4 quantitative variables such as: sepal length, sepal width, petal length, and petal width.
Data were randomly split into a training set that included 70% of the observations and a test set that included 30% of the observations. Then k-means cluster analyses was conducted on the training data specifying k=3 clusters (representing three classes: Iris Setosa, Iris Versicolour, Iris Virginica), using Euclidean distance.
To describe the performance of a classifier and see what types of errors our classifier is making a confusion matrix was created. The accuracy score is 0.82, which is quite good due to the small number of observation (n=150).
1 note
·
View note
Text
Running a Random Forest
import pandas as pd
import numpy as np
import matplotlib.pylab as plt
from sklearn.model_selection import train_test_split, cross_val_score
from sklearn.ensemble import RandomForestClassifier,
ExtraTreesClassifier
from sklearn.manifold import MDS
from sklearn.metrics.pairwise import pairwise_distances
from sklearn.metrics import accuracy_score
import seaborn as sns
%matplotlib inline
rnd_state = 4536 data = pd.read_csv('Data\winequality-red.csv', sep=';') data.info()
RangeIndex: 1599 entries, 0 to 1598 Data columns (total 12 columns): fixed acidity 1599 non-null float64 volatile acidity 1599 non-null float64 citric acid 1599 non-null float64 residual sugar 1599 non-null float64 chlorides 1599 non-null float64 free sulfur dioxide 1599 non-null float64 total sulfur dioxide 1599 non-null float64 density 1599 non-null float64 pH 1599 non-null float64 sulphates 1599 non-null float64 alcohol 1599 non-null float64 quality 1599 non-null int64 dtypes: float64(11), int64(1) memory usage: 150.0 KB data.head() fixed acidity volatile acidity citric acid residual sugar chlorides free sulfur dioxide total sulfur dioxide density pH sulphates alcohol quality 0 7.4 0.70 0.00 1.9 0.076 11.0 34.0 0.9978 3.51 0.56 9.4 5 1 7.8 0.88 0.00 2.6 0.098 25.0 67.0 0.9968 3.20 0.68 9.8 5 2 7.8 0.76 0.04 2.3 0.092 15.0 54.0 0.9970 3.26 0.65 9.8 5 3 11.2 0.28 0.56 1.9 0.075 17.0 60.0 0.9980 3.16 0.58 9.8 6 4 7.4 0.70 0.00 1.9 0.076 11.0 34.0 0.9978 3.51 0.56 9.4 5 data.describe() fixed acidity volatile acidity citric acid residual sugar chlorides free sulfur dioxide total sulfur dioxide density pH sulphates alcohol quality count 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 1599.000000 mean 8.319637 0.527821 0.270976 2.538806 0.087467 15.874922 46.467792 0.996747 3.311113 0.658149 10.422983 5.636023 std 1.741096 0.179060 0.194801 1.409928 0.047065 10.460157 32.895324 0.001887 0.154386 0.169507 1.065668 0.807569 min 4.600000 0.120000 0.000000 0.900000 0.012000 1.000000 6.000000 0.990070 2.740000 0.330000 8.400000 3.000000 25% 7.100000 0.390000 0.090000 1.900000 0.070000 7.000000 22.000000 0.995600 3.210000 0.550000 9.500000 5.000000 50% 7.900000 0.520000 0.260000 2.200000 0.079000 14.000000 38.000000 0.996750 3.310000 0.620000 10.200000 6.000000 75% 9.200000 0.640000 0.420000 2.600000 0.090000 21.000000 62.000000 0.997835 3.400000 0.730000 11.100000 6.000000 max 15.900000 1.580000 1.000000 15.500000 0.611000 72.000000 289.000000 1.003690 4.010000 2.000000 14.900000 8.000000 For visualization purposes, the number of dimensions was reduced to two by applying MDS method with cosine distance. The plot illustrates that our classes are not clearly divided into parts.
model = MDS(random_state=rnd_state, n_components=2, dissimilarity='precomputed') %time representation = model.fit_transform(pairwise_distances(data.iloc[:, :11], metric='cosine')) Wall time: 38.7 s colors = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"] plt.figure(figsize=(12, 4))
plt.subplot(121) plt.scatter(representation[:, 0], representation[:, 1], c=colors)
plt.subplot(122) sns.countplot(x='quality', data=data, palette=sns.color_palette(colors));
predictors = data.iloc[:, :11] target = data.quality
In [8]:(predictors_train, predictors_test, target_train, target_test) = train_test_split(predictors, target, test_size = .3, random_state = rnd_state)
RandomForest classifier
In [9]:list_estimators = list(range(1, 50, 5)) rf_scoring = [] for n_estimators in list_estimators: classifier = RandomForestClassifier(random_state = rnd_state, n_jobs =-1, class_weight='balanced', n_estimators=n_estimators) score = cross_val_score(classifier, predictors_train, target_train, cv=5, n_jobs=-1, scoring = 'accuracy') rf_scoring.append(score.mean())
In [10]:plt.plot(list_estimators, rf_scoring) plt.title('Accuracy VS trees number');
predictors = data.iloc[:, :11] target = data.quality
In [8]:(predictors_train, predictors_test, target_train, target_test) = train_test_split(predictors, target, test_size = .3, random_state = rnd_state)
RandomForest classifier
In [9]:list_estimators = list(range(1, 50, 5)) rf_scoring = [] for n_estimators in list_estimators: classifier = RandomForestClassifier(random_state = rnd_state, n_jobs =-1, class_weight='balanced', n_estimators=n_estimators) score = cross_val_score(classifier, predictors_train, target_train, cv=5, n_jobs=-1, scoring = 'accuracy') rf_scoring.append(score.mean())
In [10]:plt.plot(list_estimators, rf_scoring) plt.title('Accuracy VS trees number');
classifier = RandomForestClassifier(random_state = rnd_state, n_jobs =-1, class_weight='balanced', n_estimators=20) classifier.fit(predictors_train, target_train)
Out[11]:RandomForestClassifier(bootstrap=True, class_weight='balanced', criterion='gini', max_depth=None, max_features='auto', max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, min_samples_leaf=1, min_samples_split=2, min_weight_fraction_leaf=0.0, n_estimators=20, n_jobs=-1, oob_score=False, random_state=4536, verbose=0, warm_start=False)
In [12]:prediction = classifier.predict(predictors_test)
In [13]:print('Confusion matrix:\n', pd.crosstab(target_test, prediction, colnames=['Predicted'], rownames=['Actual'], margins=True)) print('\nAccuracy: ', accuracy_score(target_test, prediction)) Confusion matrix: Predicted 3 4 5 6 7 All Actual 3 0 0 3 0 0 3 4 0 1 9 6 0 16 5 2 1 166 41 3 213 6 0 0 46 131 14 191 7 0 0 5 25 23 53 8 0 0 0 3 1 4 All 2 2 229 206 41 480 Accuracy: 0.66875
In [14]:feature_importance = pd.Series(classifier.feature_importances_, index=data.columns.values[:11]).sort_values(ascending=False) feature_importance
volatile acidity 0.133023 alcohol 0.130114 sulphates 0.129498 citric acid 0.106427 total sulfur dioxide 0.094647 chlorides 0.086298 density 0.079843 pH 0.066566 residual sugar 0.061344 fixed acidity 0.058251 free sulfur dioxide 0.053990 dtype: float64
In [15]:et_scoring = [] for n_estimators in list_estimators: classifier = ExtraTreesClassifier(random_state = rnd_state, n_jobs =-1, class_weight='balanced', n_estimators=n_estimators) score = cross_val_score(classifier, predictors_train, target_train, cv=5, n_jobs=-1, scoring = 'accuracy') et_scoring.append(score.mean())
In [16]:plt.plot(list_estimators, et_scoring) plt.title('Accuracy VS trees number');
classifier = ExtraTreesClassifier(random_state = rnd_state, n_jobs =-1, class_weight='balanced', n_estimators=12) classifier.fit(predictors_train, target_train)
Out[17]:ExtraTreesClassifier(bootstrap=False, class_weight='balanced', criterion='gini', max_depth=None, max_features='auto', max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, min_samples_leaf=1, min_samples_split=2, min_weight_fraction_leaf=0.0, n_estimators=12, n_jobs=-1, oob_score=False, random_state=4536, verbose=0, warm_start=False)
In [18]:prediction = classifier.predict(predictors_test)
In [19]:print('Confusion matrix:\n', pd.crosstab(target_test, prediction, colnames=['Predicted'], rownames=['Actual'], margins=True)) print('\nAccuracy: ', accuracy_score(target_test, prediction)) Confusion matrix: Predicted 3 4 5 6 7 8 All Actual 3 0 1 2 0 0 0 3 4 0 0 9 7 0 0 16 5 2 2 168 39 2 0 213 6 0 0 49 130 11 1 191 7 0 0 2 27 24 0 53 8 0 0 0 3 1 0 4 All 2 3 230 206 38 1 480 Accuracy: 0.6708333333333333
In [20]:feature_importance = pd.Series(classifier.feature_importances_, index=data.columns.values[:11]).sort_values(ascending=False) feature_importance
Out[20]:alcohol 0.157267 volatile acidity 0.132768 sulphates 0.100874 citric acid 0.095077 density 0.082334 chlorides 0.079283 total sulfur dioxide 0.076803
pH 0.074638 fixed acidity 0.069826 residual sugar 0.066551 free sulfur dioxide 0.064579 dtype: float64
1 note
·
View note