我正在嘗試創建一個資料框,其中列名應該來自 python 中的串列。例如:- list=['6567565','67578','Speed','distance','allowance'] 然后資料框:-
| 6567565 | 67578 | 速度 | 距離 | 津貼** |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
每列的初始值為 0
uj5u.com熱心網友回復:
創建資料框物件時,您傳入列名的引數。
>>> import pandas as pd
>>> data = [[0]*5]
>>> data
[[0, 0, 0, 0, 0]]
>>> df = pd.DataFrame(data, columns=['6567565', '67578', 'Speed', 'distance', 'allowance'])
>>> df
6567565 67578 Speed distance allowance
0 0 0 0 0 0
uj5u.com熱心網友回復:
然后創建資料框fillna
out = pd.DataFrame(columns=l,index=[0]).fillna(0)
Out[484]:
6567565 67578 Speed distance allowance
0 0 0 0 0 0
uj5u.com熱心網友回復:
只需在制作空資料框時添加列名串列。
import pandas as pd
# empty df
df = pd.DataFrame()
Empty DataFrame
Columns: []
Index: []
# col names
names=['6567565','67578','Speed','distance','allowance']
# empty df but with column names
df = pd.DataFrame(columns = names)
Empty DataFrame
Columns: [6567565, 67578, Speed, distance, allowance]
Index: []
# populating first row with zeros
df.loc[len(df)] = 0
6567565 67578 Speed distance allowance
0 0 0 0 0 0
# or just creating a dataframe with a row of zeros in one line
import numpy as np
df = pd.DataFrame(np.zeros((1, 5)), columns = names) # 1 row, 5 columns
6567565 67578 Speed distance allowance
0 0.0 0.0 0.0 0.0 0.0
uj5u.com熱心網友回復:
import pandas as pd
import numpy as np
cols = ['6567565','67578','Speed','distance','allowance']
pd.DataFrame(np.zeros((1,5)), columns=cols)
輸出:
在此處輸入影像描述
np.zeros((1,5))用于創建一個 1x5 矩陣,它有零。然后 DataFrame 建構式將其轉換為 df,您可以將列名作為串列傳遞。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/437631.html
上一篇:如何從不同的子串列中分離公共元素并將它們分組到python中的串列中
下一篇:使用slice去掉中間的兩個數字
