python - 如何使用元组填充数据框?

标签 python python-3.x pandas dataframe

我有一个数据框,例如:

>>> df = pd.DataFrame(index=[1,2,3,4], columns=[1,2,3,4])
>>> df
     1    2    3    4
1  NaN  NaN  NaN  NaN
2  NaN  NaN  NaN  NaN
3  NaN  NaN  NaN  NaN
4  NaN  NaN  NaN  NaN
>>> 

以及用作“坐标”的元组列表。其中一个元组,例如:

(2,4)

我想在数据框的这个位置输入1:

     1    2    3    4
1  NaN  NaN  NaN  NaN
2  NaN  NaN  NaN   1
3  NaN  NaN  NaN  NaN
4  NaN  NaN  NaN  NaN

我该怎么做?

最佳答案

使用loc :

tup = (2,4)
df.loc[tup] = 1
print (df)
     1    2    3    4
1  NaN  NaN  NaN  NaN
2  NaN  NaN  NaN    1
3  NaN  NaN  NaN  NaN
4  NaN  NaN  NaN  NaN

另一个解决方案 set_value :

df.set_value(tup[0], tup[1], 1)
print (df)
     1    2    3    4
1  NaN  NaN  NaN  NaN
2  NaN  NaN  NaN    1
3  NaN  NaN  NaN  NaN
4  NaN  NaN  NaN  NaN

或者get_loc获取indexcolumns值的位置,并设置为values创建的numpy array :

df.values[df.index.get_loc(tup[0]), df.columns.get_loc(tup[1])] = 1
print (df)
     1    2    3    4
1  NaN  NaN  NaN  NaN
2  NaN  NaN  NaN    1
3  NaN  NaN  NaN  NaN
4  NaN  NaN  NaN  NaN

关于python - 如何使用元组填充数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43875231/

相关文章:

python - 当数据量很大时,如何正确绘制数据框的两列?

Python Sqlalchemy 计算查询中的重复结果

python - np.power 做了哪些额外的工作?

python - Pygame:如果一个按钮尚未被选中,为什么两个按钮都会激活?

python - 如何在 Linux/Raspberry Pi 中将 .py 文件转换为可执行文件

python - python 中的百分位数

python - 使用 FOR 循环完成 OR

python - 欧式距离的高效计算

python - 如何将数据框转换为字典

python - 有没有办法在多个列中填充缺失值,这些列中的部分名称与另一列中的值共享?