Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在数据帧中使用小写子字符串?_Python_String_Pandas - Fatal编程技术网

Python 如何在数据帧中使用小写子字符串?

Python 如何在数据帧中使用小写子字符串?,python,string,pandas,Python,String,Pandas,我有一个像这样的熊猫数据框 String = ["".join(np.random.choice(list("PQRSTUVXYZ"), size=7)) for _ in range(7)] Position = np.random.randint(2,7, size = 7) df=pd.DataFrame((String,Position)).T 我想在索引为列位置的字母中应用lower()函数 我试过: df = df[0][df[1]].str.lower() 但它正在降低整个弦

我有一个像这样的熊猫数据框

String = ["".join(np.random.choice(list("PQRSTUVXYZ"), size=7)) for _ in range(7)]
Position = np.random.randint(2,7, size = 7)
df=pd.DataFrame((String,Position)).T
我想在索引为列位置的字母中应用lower()函数

我试过:

df = df[0][df[1]].str.lower()
但它正在降低整个弦


谢谢你的帮助

下面是一个包含和的列表:



注意:如果索引从1开始,而不是从0开始,请将
df[0].str.slice(i,i+1)
替换为
df[0].str.slice(i-1,i)
您可以为字符串编制索引。索引到较低的字符,将该字符转到较低的字符,然后添加剩余的所有内容。实际上,使用
Series.str.slice\u replace与使用
Series.str.slice\u replace没有太大区别,但可能更具可读性

df['new_str'] = [s[:i] + s[i].lower() + s[i+1:] for s,i in zip(df[0], df[1])]

         0  1  new_str
0  TTTQTYT  3  TTTqTYT
1  USRRUZS  2  USrRUZS
2  PPXQZZT  6  PPXQZZt
3  UZZVQRQ  3  UZZvQRQ
4  ZVUQPUV  6  ZVUQPUv
5  TRPPSVU  5  TRPPSvU
6  YYZPURQ  5  YYZPUrQ
         0  1      new
0  TZPVTRT  2  TZpVTRT
1  VSSXYUP  3  VSSxYUP
2  YUTXTQS  2  YUtXTQS
3  SZRURSU  5  SZRURsU
4  XRXQVUP  3  XRXqVUP
5  PSQZZVV  6  PSQZZVv
6  XYYXPYV  3  XYYxPYV
df['new_str'] = [s[:i] + s[i].lower() + s[i+1:] for s,i in zip(df[0], df[1])]

         0  1  new_str
0  TTTQTYT  3  TTTqTYT
1  USRRUZS  2  USrRUZS
2  PPXQZZT  6  PPXQZZt
3  UZZVQRQ  3  UZZvQRQ
4  ZVUQPUV  6  ZVUQPUv
5  TRPPSVU  5  TRPPSvU
6  YYZPURQ  5  YYZPUrQ