[英]How do you append the values of the first column to all other columns in a pandas dataframe
[英]Python Pandas: Append all other column values to first 3 columns
我試圖將所有列值附加到前三列,但找不到任何方法。
輸入:
cv cv new_col mg mg new_col sa sa new_col
5g 5g cv 0% zinsen zin mg a-series-owner ase sa
2xopticalcam2x zoom cv 24 hour battery hba mg all all sa
預期輸出:
cv cv new_col
5g 5g cv
2xopticalcam2x zoom cv
0% zinsen zin mg
24 hour battery hba mg
a-series-owner ase sa
all all sa
我的方法:
oneCol = []
colLength = len(df)
for k in range(colLength):
oneCol.append(df[k])
combined = pd.concat(oneCol, ignore_index=True)
print(combined)
但我沒有得到預期的輸出。
聯合會
step = 3
df = pd.concat([pd.DataFrame(df.iloc[:, x:x+step].values)\
for x in range(0, len(df.columns), step)],
sort=True,
ignore_index=True)
0 1 2
0 5g 5g cv
1 2xopticalcam2x zoom cv
2 0% zinsen zin mg
3 24 hour battery hba mg
4 a-series-owner ase sa
5 all all sa
您可以通過DataFrame.set_axis
創建默認列名稱來更改先前的答案 :
df = pd.concat([v.set_axis(range(len(v.columns)), inplace=False, axis=1).assign(new_col=k)
for k, v in df.groupby(axis=1, level=0)], axis=0)
或者如果每組總是3個值:
df1 = pd.DataFrame(df.values.reshape(-1, 3))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.