【和鯨冬令營】通過數據打造爆款社交APP用戶行為分析報告

【🐋和鯨冬令營】通過數據打造爆款社交APP用戶行為分析報告

文章目錄

  • 【🐋和鯨冬令營】通過數據打造爆款社交APP用戶行為分析報告
    • 1 業務背景
    • 2 數據說明
    • 3 數據探索性分析
    • 4 用戶行為分析
      • 4.1 用戶屬性與行為關系分析
      • 4.2 轉化行為在不同用戶屬性群體中的分布情況
    • 5 深入分析
      • 5.1 多維度行為分析
      • 5.2 行為預測模型
    • 6 總體策略建議

時間緊張,其他的任務重,本次活動沒有像上次一樣花心思,馬上畢業了時間并不充裕,所以就沒有太認真寫,見諒!

完整編譯可運行的項目我掛載到了我的和鯨主頁:北天

歡迎大家前去fork,點贊,評論,收藏,非常感謝!!!

1 業務背景

近些年來,隨著移動互聯網和大數據的快速發展,人們花費了很多時間在各式各樣的社區、論壇、購物網站和社交軟件上,同時企業也積累了海量的用戶數據,而每一次的瀏覽、點擊都代表著特定的用戶行為,如果能夠以科學的方式對這些海量的用戶行為進行統計、分析和挖掘,那么我們將會更加了解自己的用戶:如他們的地理位置、文化背景、消費水平、行為偏好、生命周期等,同時也有助于我們制定更佳的產品或營銷策略,提升用戶體驗,從而實現精細化運營,打造爆款社交APP。

假設你是一名移動互聯網行業的數據分析師,目前想要找到影響產品轉化率的核心因素,在產品/運營側輸出關鍵策略,幫助公司提升核心指標,從而體現數據分析的價值所在;那么你會從哪些角度出發呢?

2 數據說明

  • 本數據集是某社交App一定時間內相關用戶行為的分類示例數據;
  • A、B、C、D、E、F代表了六個不同的屬性或功能參數;
  • 每一行數據代表了一組有相同屬性的用戶;
  • Action1、Action_2是具有某種歸類的用戶數;
  • Action_1到Action_2記錄的是由用戶數變化所代表的轉化率;
  • 數據中個人信息部分已脫敏;

3 數據探索性分析

我們首先加載并初步探索提供的數據集。

import pandas as pddata_path = '2023冬令營實戰數據集.csv'
data = pd.read_csv(data_path)
data.info(), data.head()

image-20240229212659898

數據集包含190,763條記錄和8個字段,字段名為"A"到"F",以及"Action_1"和"Action_2",所有字段都是整數類型。

接下來我們將進行一些基本的數據探索性分析。

# 描述性統計分析
descriptive_stats = data.describe()

image-20240229212712629

# 檢查缺失值
missing_values = data.isnull().sum()
missing_values

image-20240229212730169

數據集中的每個字段都沒有缺失值,以下是各字段的描述性統計摘要:

  • A到F:這些字段的最小值、25%、50%(中位數)、75%和最大值顯示了數據的分布范圍,例如字段"A"的值在0和1之間,可能表示某種二元特征(如性別或是否完成某項操作),字段"B"到"F"的范圍和分布各不相同,表明它們代表不同的用戶屬性或行為特征。
  • Action_1和Action_2:表示用戶行為的計數,其值范圍和標準差相當大,特別是"Action_1"的最大值達到532,606,"Action_2"的最大值為152,640,表明數據中可能存在極端值或異常值。

由于數據集中沒有發現缺失值,這簡化了數據清洗的步驟。

下面我們進行異常值探索,給定"Action_1"和"Action_2"字段的極端最大值,下一步我們可以通過可視化方法進一步探索這些可能的異常值。我們將繪制這兩個字段的箱線圖,以直觀地查看數據分布和識別潛在的異常值。

import matplotlib.pyplot as plt
import seaborn as sns# 設置繪圖風格
sns.set(style="whitegrid")# 繪制Action_1和Action_2的箱線圖
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
sns.boxplot(y=data['Action_1'])
plt.title('Action_1 Boxplot')plt.subplot(1, 2, 2)
sns.boxplot(y=data['Action_2'])
plt.title('Action_2 Boxplot')
plt.show()

image-20240229213007525

箱線圖展示了"Action_1"和"Action_2"字段中潛在的異常值,從圖中可以看出:

  • Action_1Action_2字段都有大量的異常值,這些值遠遠高于Q3(第三四分位數)加上1.5倍的IQR(四分位距)計算得出的上界。
  • 這些異常值可能代表某些用戶的行為極其活躍或者是數據收集、記錄過程中的特殊情況。

4 用戶行為分析

接下來我們將從用戶行為分析的角度入手,特別是關注影響產品轉化率的核心因素,首先我們需要定義什么是“轉化率”在這個上下文中的意義,考慮到數據集的特點,我們可以假設"Action_1"和"Action_2"代表了用戶的某種轉化行為,例如購買、點擊廣告等。

因此我們的分析可以從以下幾個角度展開:

  • 用戶屬性(A到F)與行為(Action_1和Action_2)的關系:探索這些屬性如何影響用戶的轉化行為。
  • 轉化行為的分布:分析轉化行為(Action_1和Action_2)在不同用戶群體中的分布情況。

4.1 用戶屬性與行為關系分析

為了探索用戶屬性(A到F)與轉化行為(Action_1和Action_2)之間的關系,我們可以進行如下分析:

  • 相關性分析:計算用戶屬性與轉化行為之間的相關系數,以識別哪些屬性與轉化行為更為相關。
  • 群組分析:對用戶屬性進行分組(例如,根據屬性"A"是否為1),比較不同組內的轉化行為差異。

我們先從相關性分析開始,計算用戶屬性(A到F)與轉化行為(Action_1和Action_2)之間的相關系數,這將幫助我們了解哪些用戶屬性與轉化行為更密切相關。

# 計算相關系數
correlation_matrix = data.corr()
# 展示相關系數矩陣
correlation_matrix[['Action_1', 'Action_2']]

image-20240229213403087

上述結果展現的揭示了用戶屬性(A到F)與轉化行為(Action_1和Action_2)之間的相關性如下:

  • Action_1Action_2之間有很高的相關性(約0.87),這表明這兩種行為可能是相互關聯的,或者在很多情況下同時發生。
  • 屬性AAction_1Action_2呈正相關(分別約0.06和0.05),盡管相關性不是很強,但這表明屬性A的某些值可能與更高的轉化行為相關聯。
  • 其他屬性(BF)與轉化行為的相關性較弱,且部分屬性與轉化行為呈負相關,特別是FAction_1Action_2的相關性最低(分別約-0.08和-0.05)。

這些發現提示我們,屬性A可能在分析用戶轉化行為時值得特別關注,而屬性F的負相關性可能表明隨著F的增加,用戶的轉化行為可能會減少。

接下來,為了更深入地理解這些屬性如何影響轉化行為,我們將進行群組分析,比較不同用戶屬性群體的轉化行為差異,我們將從屬性A開始,因為它與轉化行為的相關性最強,我們將比較屬性A為1和為0的用戶群體的轉化行為(Action_1和Action_2)的平均值差異。

# 按屬性A分組,計算每組的Action_1和Action_2的平均值
grouped_by_A = data.groupby('A')[['Action_1', 'Action_2']].mean()
grouped_by_A

image-20240229213537053

對于屬性A,我們比較了當其值為1和為0時,用戶的轉化行為(Action_1和Action_2)的平均值:

  • A=1時,Action_1的平均值為1,532.96,Action_2的平均值為296.18。
  • A=0時,Action_1的平均值為525.88,Action_2的平均值為87.14。

這個結果表明,屬性A為1的用戶群體的轉化行為(無論是Action_1還是Action_2)的平均值明顯高于屬性A為0的用戶群體,這進一步證實了屬性A可能是影響用戶轉化行為的一個重要因素。

基于這個發現,我們可以假設改善或增強與屬性A相關的產品特性或用戶體驗,可能會提高用戶的轉化率。

4.2 轉化行為在不同用戶屬性群體中的分布情況

下一步我們將通過可視化方法進一步探索轉化行為(Action_1和Action_2)在不同用戶屬性群體中的分布情況,我們將選擇一個代表性的屬性進行分析,考慮到屬性A的重要性,我們將圍繞它進行展開,我們計劃繪制屬性A不同值對應的Action_1和Action_2的分布情況。

# 繪制屬性A對Action_1和Action_2分布的影響
plt.figure(figsize=(14, 6))
plt.subplot(1, 2, 1)
sns.boxplot(x='A', y='Action_1', data=data)
plt.title('Action_1 Distribution by Attribute A')
plt.subplot(1, 2, 2)
sns.boxplot(x='A', y='Action_2', data=data)
plt.title('Action_2 Distribution by Attribute A')
plt.tight_layout()
plt.show()

image-20240229213745526

通過箱線圖可視化屬性AAction_1Action_2分布的影響,我們可以觀察到以下幾點:

  • Action_1和Action_2的分布:無論是Action_1還是Action_2,屬性A為1的用戶群體的中位數和四分位數范圍都高于屬性A為0的用戶群體,這與我們之前的分析結果一致,即屬性A為1的用戶更傾向于有更高的轉化行為。
  • 異常值:兩種行為的分布都有大量的異常值,尤其是在屬性A為1的群體中,這可能表明存在一些極端活躍的用戶。

這些觀察結果支持了我們之前的發現,即屬性A顯著影響用戶的轉化行為,這提示我們提高與屬性A相關的用戶滿意度或參與度可能是提高轉化率的關鍵。

策略建議

  1. 增強與屬性A相關的特性或服務:鑒于屬性A對轉化行為的顯著影響,應優先改進與之相關的產品特性或用戶體驗,以提升該用戶群的參與度和滿意度。
  2. 針對性營銷活動:可以針對屬性A為1的用戶群體設計專門的營銷活動或優惠,以進一步提高他們的轉化率。
  3. 關注高活躍用戶:對于異常活躍的用戶群體,進行深入分析了解他們的特性和需求,可能發現提升用戶活躍度和轉化率的新機會。

這些策略建議旨在通過深入理解和滿足用戶需求,優化產品和營銷策略,最終提升用戶轉化率。

5 深入分析

5.1 多維度行為分析

基于前面的分析,我們已經確認了屬性A對用戶轉化行為的重要性,接下來我們可以進一步深入分析探索,除了單一屬性的影響,用戶的轉化行為可能受到多個因素的共同作用,我們可以利用多變量分析方法,如邏輯回歸或決策樹,來識別哪些屬性組合對轉化行為影響最大。

我們將使用邏輯回歸模型,分析多個屬性如何共同影響用戶的某一轉化行為(例如,選擇Action_1作為響應變量),這將幫助我們識別對轉化行為影響最大的屬性組合。

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report, confusion_matrix# 由于Action_1的值范圍很大,我們將其轉換為二元變量,以便于使用邏輯回歸分析
# 定義轉化行為的閾值,這里假設高于中位數的行為視為正樣本(1),否則為負樣本(0)
threshold = data['Action_1'].median()
data['Action_1_binary'] = (data['Action_1'] > threshold).astype(int)# 準備特征變量和目標變量
X = data[['A', 'B', 'C', 'D', 'E', 'F']]  # 特征變量
y = data['Action_1_binary']  # 目標變量# 分割數據集為訓練集和測試集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 構建邏輯回歸模型
log_reg_model = LogisticRegression(max_iter=1000)# 訓練模型
log_reg_model.fit(X_train, y_train)# 模型評估
y_pred = log_reg_model.predict(X_test)
report = classification_report(y_test, y_pred)
conf_matrix = confusion_matrix(y_test, y_pred)
report, conf_matrix
('              precision    recall  f1-score   support\n\n           0       0.63      0.61      0.62     29134\n           1       0.61      0.64      0.62     28095\n\n    accuracy                           0.62     57229\n   macro avg       0.62      0.62      0.62     57229\nweighted avg       0.62      0.62      0.62     57229\n',array([[17648, 11486],[10162, 17933]], dtype=int64))

我們使用邏輯回歸模型分析了多個用戶屬性(A到F)如何共同影響用戶的轉化行為(這里以Action_1的二元變化為例),模型的評估結果如下:

  • 準確率(Accuracy):模型在測試集上的準確率為62%,這意味著模型能夠以一定的準確度預測用戶的轉化行為。
  • 精確度(Precision)**和**召回率(Recall):對于正樣本(即轉化行為較高的用戶)和負樣本(即轉化行為較低的用戶),模型的精確度和召回率均在60%到64%之間。

混淆矩陣顯示了模型預測結果與實際情況的對比:

  • 真正(TP):17,933,即模型正確預測為正樣本的數量。
  • 假正(FP):11,486,即模型錯誤預測為正樣本的數量。
  • 真負(TN):17,648,即模型正確預測為負樣本的數量。
  • 假負(FN):10,162,即模型錯誤預測為負樣本的數量。

邏輯回歸模型的結果表明,用戶屬性對其轉化行為有一定的預測能力,盡管模型的整體性能表現良好,但仍有改進的空間,這可能意味著用戶的轉化行為受到多種因素的影響,而這些因素可能沒有全部包含在當前分析中。

對于邏輯回歸模型,我們可以可視化各個特征的系數(權重),以展示它們對預測結果的影響程度。這有助于我們理解哪些用戶屬性對其轉化行為的預測貢獻最大。

# 邏輯回歸模型的特征系數可視化
features = X.columns
coefficients = log_reg_model.coef_[0]# 創建系數的DataFrame
coeff_df = pd.DataFrame({'Feature': features, 'Coefficient': coefficients})# 繪制系數的條形圖
plt.figure(figsize=(10, 6))
sns.barplot(x='Coefficient', y='Feature', data=coeff_df.sort_values(by='Coefficient', ascending=False))
plt.title('Logistic Regression Coefficients')
plt.xlabel('Coefficient Value')
plt.ylabel('Feature')
plt.tight_layout()
plt.show()

image-20240229214548908

從邏輯回歸模型的系數可視化中,我們可以看到各個特征對預測用戶轉化行為(即Action_1_binary)的貢獻程度,正系數表示特征與正樣本(較高的轉化行為)正相關,負系數則表示負相關。

結論

  • 某些特征對用戶的轉化行為有顯著影響,這些特征的優化可能會直接提升用戶的轉化率。
  • 特征間的影響程度不同,指出了不同用戶屬性在影響用戶行為上的相對重要性。

策略建議

  • 重點優化:針對影響力較大的特征,進行產品或服務的優化,以提高用戶的轉化率。
  • 用戶分析:深入分析對轉化行為有正面影響的特征背后的用戶行為和偏好,定制化營銷策略。

5.2 行為預測模型

利用已有的用戶屬性和行為數據,我們可以嘗試構建一個預測模型,預測用戶的轉化行為,這樣的模型不僅可以幫助我們更準確地識別潛在的高價值用戶,還可以為制定個性化的營銷策略提供支持。

為了進一步探索用戶行為的預測模型,我們將使用機器學習的方法來預測用戶的轉化行為,考慮到數據集的特性和之前的分析結果,我們可以嘗試構建一個分類模型,預測用戶是否會表現出較高的轉化行為(即Action_1_binary為1)。

這里我們將使用隨機森林分類器進行行為預測模型的構建,隨機森林是一種集成學習方法,它通過構建多個決策樹來提高預測的準確性和穩定性,相較于邏輯回歸模型,隨機森林能夠更好地處理非線性關系和特征間的交互效應,因此可能在這個任務上表現更優。

from sklearn.ensemble import RandomForestClassifier# 構建隨機森林模型
rf_model = RandomForestClassifier(n_estimators=100, random_state=42)# 訓練模型
rf_model.fit(X_train, y_train)# 模型評估
y_pred_rf = rf_model.predict(X_test)
report_rf = classification_report(y_test, y_pred_rf)
conf_matrix_rf = confusion_matrix(y_test, y_pred_rf)report_rf, conf_matrix_rf
('              precision    recall  f1-score   support\n\n           0       0.81      0.64      0.72     29134\n           1       0.69      0.84      0.76     28095\n\n    accuracy                           0.74     57229\n   macro avg       0.75      0.74      0.74     57229\nweighted avg       0.75      0.74      0.74     57229\n',array([[18694, 10440],[ 4436, 23659]]))

隨機森林模型在測試集上的評估結果如下:

  • 準確率(Accuracy):模型的準確率提高到了74%,這表明模型能夠較準確地預測用戶是否會表現出較高的轉化行為。
  • 精確度(Precision)**和**召回率(Recall):對于正樣本(即Action_1_binary為1的情況),模型的召回率達到了84%,精確度為69%;對于負樣本,精確度為81%,召回率為64%。

混淆矩陣顯示了模型預測結果與實際情況的對比:

  • 真正(TP):23,659,即模型正確預測為正樣本的數量。
  • 假正(FP):10,440,即模型錯誤預測為正樣本的數量。
  • 真負(TN):18,694,即模型正確預測為負樣本的數量。
  • 假負(FN):4,436,即模型錯誤預測為負樣本的數量。

隨機森林模型的性能明顯優于之前的邏輯回歸模型,特別是在召回率方面的表現,這表明隨機森林模型更適合處理這種類型的分類問題,尤其是在預測用戶的轉化行為時。

對于隨機森林模型,我們將可視化特征的重要性得分,這將幫助我們識別在預測用戶轉化行為時哪些特征最為關鍵。

# 隨機森林模型的特征重要性可視化
feature_importances = rf_model.feature_importances_# 創建特征重要性的DataFrame
importance_df = pd.DataFrame({'Feature': features, 'Importance': feature_importances})# 繪制特征重要性的條形圖
plt.figure(figsize=(10, 6))
sns.barplot(x='Importance', y='Feature', data=importance_df.sort_values(by='Importance', ascending=False))
plt.title('Random Forest Feature Importances')
plt.xlabel('Importance Score')
plt.ylabel('Feature')
plt.tight_layout()
plt.show()

image-20240229214912185

隨機森林模型的特征重要性可視化展示了各個特征在預測用戶轉化行為時的重要性得分,較高的重要性得分表示該特征在預測用戶是否會表現出較高轉化行為時更為關鍵。

結論

  • 特征重要性得分揭示了不同用戶屬性對預測用戶轉化行為的貢獻度,指導我們理解哪些屬性更能影響用戶的轉化概率。
  • 與邏輯回歸模型結果相比,隨機森林提供了一個更細致的特征重要性視角,有助于我們更全面地理解影響用戶轉化行為的因素。

策略建議

  • 聚焦關鍵屬性:針對特征重要性高的用戶屬性,開展針對性的改進措施,例如優化用戶體驗、提升服務質量、調整產品功能等,以增加用戶的轉化概率。
  • 數據驅動決策:利用特征重要性的洞察,制定基于數據的決策,例如在營銷活動中優先針對可能轉化率高的用戶群體。
  • 持續監測和優化:隨著市場和用戶行為的變化,定期重新評估特征的重要性,并據此調整策略。

6 總體策略建議

根據上述分析結果,我們為公司提出以下總體策略建議:

  • 優化關鍵用戶屬性:針對影響用戶轉化行為的關鍵屬性,如屬性A,公司應優化相關的產品特性或用戶體驗,這可能包括改進用戶界面、增強產品功能或提供更個性化的服務。
  • 實施多維度用戶分析:繼續利用多變量分析和機器學習模型來深入理解不同用戶屬性和行為之間的復雜關系,這將幫助公司更準確地識別目標用戶群體,制定更有效的營銷策略。
  • 構建和優化預測模型:利用隨機森林等先進的機器學習技術構建和持續優化用戶行為預測模型。這些模型可以幫助公司更有效地識別高潛力用戶,實施針對性的營銷活動,提高轉化率。
  • 個性化營銷策略:基于用戶行為預測模型的結果,制定個性化的營銷策略和推廣活動,通過精準定位用戶偏好和需求,提供定制化的內容和優惠,以提高用戶參與度和忠誠度。
  • 動態調整和優化:市場環境和用戶行為是不斷變化的,公司需要建立起動態監測和分析機制,定期評估和調整產品策略、營銷活動和用戶體驗設計,確保持續滿足用戶需求,提升用戶滿意度和轉化率。

通過實施這些策略,公司可以更有效地利用用戶數據來指導產品開發和營銷決策,最終實現業務增長和市場競爭力的提升。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/717341.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/717341.shtml
英文地址,請注明出處:http://en.pswp.cn/news/717341.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

值類型和引用類型詳解(C#)

可能你對值類型和引用類型還不太了解。 值類型和引用類型,是c#比較基礎,也必須掌握的知識點,但是也不是那么輕易就能掌握,今天跟著我一起來看看吧。 典型類型 首先我們看看這兩種不同的類型有哪些比較典型的代表。 典型值類型…

【云安全】網絡安全領域安全協議

IPSEC協議 IPSec(Internet Protocol Security)是一種網絡層安全協議,用于在IP通訊過程中確保完整性、認證性和機密性。它通過在標準的IP協議上加入安全機制來實現加密和認證。IPSec主要由兩個協議組成:認證頭(AH&…

在Windows 10系統中啟用快速啟動功能

在Windows 10系統中啟用快速啟動功能,可以按照以下步驟進行: 方法一(通過設置應用): 點擊任務欄左下角的“開始”按鈕或者按鍵盤上的Win鍵打開“開始”菜單。在“開始”菜單中選擇“設置”圖標(齒輪形狀&…

3.3日學習打卡----初學Redis(一)

3.3日學習打卡 目錄: 3.3日學習打卡NoSQL為什么要用NoSQL什么是NoSQL?NoSQL的四大分類關系型數據庫和非關系型數據及其區別NoSQL經典應用 RedisRedis是什么?Linux下安裝RedisDocker下安裝Redis基本知識 NoSQL 為什么要用NoSQL 單機Mysql的美好年代 在90年代&…

Sqlmap進行http頭注入及流量分析

環境準備:構建完善的安全滲透測試環境:推薦工具、資源和下載鏈接_滲透測試靶機下載-CSDN博客 利用 SQLMap 進行 HTTP 頭注入的方式對于 Less-19 注入點的注入 SQLMap 工具我使用kali中自帶的 注入準備 先使用bp將Less-19靶場的包抓下來保存到 txt 文件中,輸入賬號 admin…

Ubuntu23.10禁用Wayland

禁用前 編輯custom.conf文件 sudo vim /etc/gdm3/custom.conf 去掉WaylandEnablefalse前的#號 保存退出 重啟系統 生效: 成功轉換為X11

【LeetCode題解】2809. 使數組和小于等于 x 的最少時間+2788. 按分隔符拆分字符串+410. 分割數組的最大值

文章目錄 [2809. 使數組和小于等于 x 的最少時間](https://leetcode.cn/problems/minimum-time-to-make-array-sum-at-most-x/)思路: [2788. 按分隔符拆分字符串](https://leetcode.cn/problems/split-strings-by-separator/)思路: [410. 分割數組的最大…

Leetcoder Day36| 動態規劃part03

343. 整數拆分 給定一個正整數 n,將其拆分為至少兩個正整數的和,并使這些整數的乘積最大化。 返回你可以獲得的最大乘積。 示例 1: 輸入: 2輸出: 1解釋: 2 1 1, 1 1 1。 示例 2: 輸入: 10輸出: 36解釋: 10 3 3 4, 3 3 4 36。說明: 你可以假設 …

如何提取圖片中某個位置顏色的RGB值,RGB十進制值與十六進制的轉換

打開本地的畫圖工具,把圖片復制或截圖粘進去,用顏色提取器點對應的位置就可以提取了。 獲取到的 RGB 值為 (66,133,244) 轉化后的值為 #4285F4。 【內容拓展一】:RGB 十進制值與十六進制的轉換 當我們從 RGB 十進制值轉換為十六進制值時&a…

Yapi部署

【GO開發工程師】Yapi部署 推薦個人主頁:席萬里的個人空間 文章目錄 【GO開發工程師】Yapi部署1、Yapi部署 1、Yapi部署 初始化yapi: git clone https://github.com/Ryan-Miao/docker-yapi.git cd docker-yapi docker-compose upyapi啟動失敗 1.cd進入…

粉絲福利-純凈Windows系統安裝鏡像下載網站

?Windows操作系統鏡像文件是從微軟或其他經過驗證的來源下載正版操作系統安裝介質的關鍵所在。以下是詳細闡述從不同渠道獲取Windows系統鏡像的說明,尤其強調官方和安全的下載途徑。Windows系統鏡像可以從多個可靠來源下載,以下是幾個推薦的選擇: 微軟官方網站 微軟官方網…

對于《幻獸帕魯》這樣的游戲,如何優化服務器性能以提高游戲體驗?

對于《幻獸帕魯》這樣的游戲,如何評估和優化服務器性能以提高游戲體驗? 硬件配置優化:選擇高性能的服務器,如4核16G的幻獸帕魯服務器,這樣可以保證有足夠的計算性能和內存容量來支持游戲的運行。同時,考慮到…

Node.js(六)-數據庫與身份認證

一 、學習目標 ◆ 能夠知道如何配置MySQL數據庫環境 ◆ 能夠認識并使用常見的 SQL語操作數據庫 ◆ 能夠在Express中操作MySQL數據庫 ◆ 能夠了解 Session的實現原理 ◆ 能夠了解JWT的實現原理 二、數據庫的基本概念 1.1 什么是數據庫 數據庫(database)…

邊緣計算網關的重要作用-天拓四方

隨著物聯網技術的迅猛發展,數據量的爆炸式增長對數據處理和分析提出了更高的要求。邊緣計算網關作為連接物理世界和數字世界的橋梁,正逐漸受到各行業的重視。本文將從行業背景、功能特點以及帶來的效益等方面,探討邊緣計算網關在當前及未來的…

備戰藍橋杯---狀態壓縮DP基礎2之TSP問題

先來一個題銜接一下: 與上一題的思路差不多,不過這里有幾點需要注意: 1.因為某一列的狀態還與上上一行有關,因此我們令f[i][j][k]表示第i行狀態為j,第i-1行狀態為k的最大炮兵數。 因此,我們可以得到狀態轉移方程&…

2024/03/01

控制機械臂 #include<myhead.h> #define SER_IP "192.168.126.2" #define SER_PORT 8888#define CLI_IP "192.168.252.165" #define CLI_PORT 9999int main(int argc, const char *argv[]) {int cfdsocket(AF_INET,SOCK_STREAM,0);if(cfd-1){perror…

成功解決git clone遇到的error: RPC failed; curl 16 Error in the HTTP2 framing layer fatal: expected flush af

成功解決git clone遇到的error: RPC failed; curl 16 Error in the HTTP2 framing layer fatal: expected flush af 問題描述解決方案 問題描述 用git的時候可能會遇到這個問題&#xff1a; (base) zhouzikang7443-8x4090-120:~/project$ git clone https://github.com/123/12…

Windows服務器:通過nginx反向代理配置HTTPS、安裝SSL證書

先看下效果&#xff1a; 原來的是 http&#xff0c;配置好后 https 也能用了&#xff0c;并且顯示為安全鏈接。 首先需要 SSL證書 。 SSL 證書是跟域名綁定的&#xff0c;還有有效期。 windows 下雙擊可以查看相關信息。 下載的證書是分 Apache、IIS、Tomcat 和 Nginx 的。 我…

【leetcode】圓圈中最后剩下的數字

目錄 1. 問題 2. 思路 3. 代碼 4. 運行 1. 問題 本題即為典型的約瑟夫問題&#xff0c;通過遞推公式倒推出問題的解。原始問題是從n個人中每隔m個數踢出一個人&#xff0c;原始問題變成從n-1個人中每隔m個數踢出一個人…… 示例 1&#xff1a; 輸入: n 5, m 3 輸出: 3…

Unity TMP文字移動效果

前言 看見很多游戲有很特殊的波浪形文字效果&#xff0c;于是來嘗試一下控制TMP文字頂點的方式達到類似效果。 原理 掛載tmp text&#xff0c;在里面隨便放入非空格字符。 tmp text組件開放了textInfo接口&#xff0c;也就是GetComponent<TextMeshProUGUI>().textInfo…